Главная » Joomla » Статьи о Joomla » Основы Joomla » Изменение постраничной навигации в Joomla 1.6
Распечатать статью

Изменение постраничной навигации в Joomla 1.6

Изменение постраничной навигации в Joomla 1.6 осуществляется практически так же, как и в Joomla 1.5. Однако, в шаблонах Joomla 1.6 отсутствует файл для постраничной навигации. Поэтому будет возможность скачать этот файл по ссылке в статье.

Базовый файл, который отвечает за формирование постраничной навигации в Joomla 1.6, как и в предыдущей Joomla 1.5, располагается в директории «/libraries/joomla/html/». Файл называется «pagination.php». Делать полностью все изменения в этом файле не целесообразно, потому что при обновлении движка Joomla 1.6 файл может обновиться, и все изменения придется делать заново. Поэтому максимум настроек постраничной навигации нужно вынести в настройки конкретного шаблона.

В этом файле нужно будет изменить 2 настройки: Первая настройка отвечает за количество номеров отображаемых страниц. Меняется примерно в 109 строчке. Выглядит так:

$displayedPages = 10;

Вместо цифры 10 ставим нужное целое число (количество показываемых номеров страниц). Что это такое, можно посмотреть на изображении ниже. Функция «getPagesCounter()», которая начинается примерно в 146 строчке, выгляди так:

public function getPagesCounter()
{
// Initialise variables.
$html = null;
if ($this->get(‘pages.total’) > 1) {
$html .= JText::sprintf(‘JLIB_HTML_PAGE_CURRENT_OF_TOTAL’,
$this->get(‘pages.current’), $this->get(‘pages.total’));
}
return $html;
}

Эта функция отвечает за вывод снизу количества страниц и номер страницы, которая сейчас открыта. Если вы не хотите, чтобы отображалось количество страниц, то закомментируйте примерно 213 строчку. Например, вот так:

//$html .= JText::sprintf(‘JLIB_HTML_PAGE_CURRENT_OF_TOTAL’,
//$this->get(‘pages.current’), $this->get(‘pages.total’));

С настройками системного файла мы разобрались. Остальные настройки будут для конкретного шаблона. Для начала нужно скачать файл постраничной навигации шаблона. Теперь нам нужно положить этот файл сюда: «templates/[ваш шаблон]/html/». В этом файле нас интересуют три функции. Функция «pagination_list_render($list)» — отвечает за вывод строки с номерами страниц и ссылок на первую и последнюю страницу. Функция «pagination_item_active(&$item)» — отвечает за вывод активных (тех, на которые можно нажать) ссылок в постраничной навигации. Функция «pagination_item_inactive(&$item)» — отвечает за вывод неактивных (тех, на которые нельзя нажать) ссылок в постраничной навигации, либо той страницы, на которой находимся. Если с последними двумя функциями все более-менее понятно, то на первой я остановлюсь подробнее. Функция «pagination_list_render($list)». На первом шаге открывается список.

$html = ‘<ul>';

После этого создается элемент списка со ссылкой на первую страницу.

$html .= ‘<li>’.$list[‘start’][‘data’].'</li>';

Сразу за ним элемент списка со ссылкой на предыдущую чтраницу.

$html .= ‘<li>’.$list[‘previous’][‘data’].'</li>';

После этого в цикле выводятся элементы списка с номерами страниц.

foreach($list[‘pages’] as $page) {
$html .= ‘<li>’.$page[‘data’].'</li>';
}

После всех страниц выводятся соответственно ссылка на следующую страницу, ссылка на последнюю страницу, и закрывается список.

$html .= ‘<li>’. $list[‘next’][‘data’].'</li>';
$html .= ‘<li>’. $list[‘end’][‘data’].'</li>';
$html .= ‘</ul>';

Ну и в конце все это выводится на страницу.

return $html;

Соответственно, никто нам не мешает изменить структуру и место вывода ссылок на страницы. Можем положить нужные ссылки в div-ы, задать нужный класс и т.д.

Исходник:  joomla-zona.ru

Вы можете оставить комментарий, или обратную ссылку на Ваш сайт.

Оставить комментарий

Похожие статьи