0 Пользователей и 1 Гость просматривают эту тему.
  • 3 Ответов
  • 1374 Просмотров
*

Pavluk

  • Осваиваюсь на форуме
  • 31
  • 1 / 0
  • Skype: Pavluk1992
Добрый день, нужно изменить лимит вывода  pagination, он находится тут  /libraries/cms/pagination/pagination.php
Подскажите как переопределить, перепробовал масса вариантов
Сделать нужно примерно следующее 
P.S. Joomla 3.4.4
*

AlekVolsk

  • Гуру
  • 6915
  • 415 / 4
Re: Переопределение /libraries/cms/pagination
« Ответ #1 : 17.09.2015, 13:28:22 »
это делается в /templates/ваш шаблон/html/pagination.php, переопределите там переменную $displayedPages, значение должно быть кратным 2, иначе рискуете получить ошибку деления (как-то попробовал поставить 5, подумал, что сайт вообще потерял).
*

Pavluk

  • Осваиваюсь на форуме
  • 31
  • 1 / 0
  • Skype: Pavluk1992
Re: Переопределение /libraries/cms/pagination
« Ответ #2 : 17.09.2015, 13:31:19 »
это делается в /templates/ваш шаблон/html/pagination.php, переопределите там переменную $displayedPages, значение должно быть кратным 2, иначе рискуете получить ошибку деления (как-то попробовал поставить 5, подумал, что сайт вообще потерял).
Подскажите как правильно переопределить? Я уже создал pagination.php и переписал под себя но переменной этой там не было (переписывал под bootstrap на основе стандартного от Joomla 3.3)
Вот код мой
Код
<?php
defined('_JEXEC') or die;

function pagination_list_footer($list)
{
$html = "<div class=\"pagination\">\n";
$html .= $list['pageslinks'];
$html .= "\n<input type=\"hidden\" name=\"" . $list['prefix'] . "limitstart\" value=\"" . $list['limitstart'] . "\" />";
$html .= "\n</div>";

return $html;
}

function pagination_list_render($list)
{
// Calculate to display range of pages
$currentPage = 1;
$range = 1;
$step = 6;
foreach ($list['pages'] as $k => $page)
{
if (!$page['active'])
{
$currentPage = $k;
}
}
if ($currentPage >= $step)
{
if ($currentPage % $step == 0)
{
$range = ceil($currentPage / $step) + 1;
}
else
{
$range = ceil($currentPage / $step);
}
}

$html = '<ul class="pagination">';
$html .= $list['start']['data'];
$html .= $list['previous']['data'];

foreach ($list['pages'] as $k => $page)
{
if (in_array($k, range($range * $step - ($step + 1), $range * $step)))
{
if (($k % $step == 0 || $k == $range * $step - ($step + 1)) && $k != $currentPage && $k != $range * $step - $step)
{
$page['data'] = preg_replace('#(<a.*?>).*?(</a>)#', '$1...$2', $page['data']);
}
}

$html .= $page['data'];
}

$html .= $list['next']['data'];
$html .= $list['end']['data'];

$html .= '</ul>';
return $html;
}

function pagination_item_active(&$item)
{
$class = '';

// Check for "Start" item
if ($item->text == JText::_('JLIB_HTML_START'))
{
$display = '<span class="icon-first">' . $item->link . '</span>';
}
// Check for "Prev" item
if ($item->text == JText::_('JPREV'))
{
$display = '<span class="icon-previous">' . $item->link . '</span>';
}
// Check for "Next" item
if ($item->text == JText::_('JNEXT'))
{
$display = '<span class="icon-next">' . $item->link . '</span>';
}

// Check for "End" item
if ($item->text == JText::_('JLIB_HTML_END'))
{
$display = '<span class="icon-last">' . $item->link . '</span>';
}

// If the display object isn't set already, just render the item with its text
if (!isset($display))
{
$display = $item->text;
$class   = ' class="hidden-xs"';
}

return '<li' . $class . '><a title="' . $item->text . '" href="' . $item->link . '" class="pagenav">' . $item->text . '</a></li>';
}

function pagination_item_inactive(&$item)
{
// Check for "Start" item
if ($item->text == JText::_('JLIB_HTML_START'))
{
return '<li class="disabled"><a><span class="icon-first">' . JText::_('JLIB_HTML_START').'</span></a></li>';
}

// Check for "Prev" item
if ($item->text == JText::_('JPREV'))
{
return '<li class="disabled"><a><span class="icon-previous">' . JText::_('JPREV').'</span></a></li>';
}

// Check for "Next" item
if ($item->text == JText::_('JNEXT'))
{
return '<li class="disabled"><a>' . JText::_('JNEXT').'</a></li>';
}

// Check for "End" item
if ($item->text == JText::_('JLIB_HTML_END'))
{
return '<li class="disabled"><a><span class="icon-last">' . JText::_('JLIB_HTML_END').'</span></a></li>';
}

// Check if the item is the active page
if (isset($item->active) && ($item->active))
{
return '<li class="active hidden-xs"><a>' . $item->text . '</a></li>';
}

// Doesn't match any other condition, render a normal item
return '<li class="disabled hidden-xs"><a>' . $item->text . '</a></li>';
}
*

Pavluk

  • Осваиваюсь на форуме
  • 31
  • 1 / 0
  • Skype: Pavluk1992
Re: Переопределение /libraries/cms/pagination
« Ответ #3 : 17.09.2015, 13:32:54 »
это делается в /templates/ваш шаблон/html/pagination.php, переопределите там переменную $displayedPages, значение должно быть кратным 2, иначе рискуете получить ошибку деления (как-то попробовал поставить 5, подумал, что сайт вообще потерял).
Еще подскажите как сделать что бы "..." появлялось не на заданном номере как сейчас
Код
$step = 6;
а появлялось в последнем отображаемом пункте как на скриншете выше
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Переопределение макета блога категории в шаблонах YooTheme [ Решено ]

Автор dm-krv

Ответов: 7
Просмотров: 1818
Последний ответ 25.02.2019, 16:56:33
от Katya1212
Переопределение шаблона блога

Автор voland

Ответов: 0
Просмотров: 639
Последний ответ 21.01.2019, 00:55:48
от voland
Переопределение блога

Автор Dgikar

Ответов: 14
Просмотров: 1138
Последний ответ 29.11.2018, 20:38:09
от robert
Переопределение меню админки в кастомном шаблоне админки

Автор lesh1j

Ответов: 2
Просмотров: 1493
Последний ответ 04.11.2017, 17:36:22
от lesh1j
Создать переопределение в шаблоне админ панели

Автор alex9158

Ответов: 4
Просмотров: 710
Последний ответ 19.01.2017, 21:20:00
от alex9158