Материалы по администрированию Joomla 2.5



Пагинация на сайте Joomla

 

Пагинация на сайте Joomla это разбиение сайта на страницы, если они не умещаются на одной странице. Я уверен, вам знакома пагинация на сайте Joomla. Это выведенные цифры, внизу страниц, которые помогают листать содержимое сайта.

Kolichestvo-str

Если определить более академично, пагинация сайта Joomla это возможность и настройка вывода, а также сам вывод на страницах сайта кнопок быстрого перехода на другие страницы сайта, сгруппированные в его настройках. На практике если материалы не помещаются на одной странице, то внизу, главной страницы сайта, блога категорий, списка материалов категории, архива сайта выводится горизонтальный пронумерованный список всех страниц этих макетов. Пагинацию на Joomla можно включить (отключить) в административной панели сайта.

Термин пагинация (нумерация страниц, разбивка на страницы) не употребляется в документации joomla. Официально этот вид навигации сайта называется «Разбиение на страницы». Именно этот пункт нужно искать для его настроек в административной панели сайта. Но, по-моему, этот термин вполне оправдан, так как он основан на классе PHP Pagination, и именно файл Pagination.php в коде сайта определяют интерфейс разбиения на страницы с отображением результатов в базе данных.

Настройка пагинации в административной панели сайта

Настройки пагинации Joomla производятся, как и любые настройки joomla сверху вниз. Тоесть самые приоритетные настройки материала.

Настройка пагинации в менеджере материалов

В административной панели сайта Откройте вкладку Расширения -> Менеджер материалов -> Общие настройки.

Admin-J3-0

В строке Разбиение на страницы вы можете выбрать из выпадающего списка: Скрыть (не показывать пагинацию), Показать, Авто. Авто это автоматическое разбиение на страницы, заложенное в коде Joomla или коде текущего шаблона.

Эти настройки являются общими для макетов Список, Блог и Избранные, однако они могут быть переопределены в параметрах вывода категорий в пункте меню.

Настройка пагинации в пункте меню

Настраивать разбиение на страницы можно только в макетах, которые создают списки и то не все. Настроить разбиение на страницы можно настроить в следующих списках:

  • Список категорий;
  • Блог категорий;
  • Список ссылок /Список категорий ссылок;
  • Список ссылок/Список ссылок категории;
  • Ленты новостей/Список всех категорий лент новостей;
  • Ленты новостей/Список лент новостей категории.

Расширения->Менеджер Меню -> Создать (пункт меню)

pagination-joomla-foto-01

lenty-novostey

spisok-ssylok

Настраивается вывод разбиения на страницы при создании пункта меню. Находится настройка разбиения на страницы в пункте «Менеджер меню»:

Создание пункта меню ->Выбор типа пункта Меню -> Дополнительные параметры-> Параметры макета или Параметры списка (зависит от типа пункта меню).

Menu-Cat-J3-0

Примечание: В этих настройках появляется еще один пункт: Результаты разбиения на страницы (2 на фото). Этот пункт позволяет вывести в форме пагинации сообщение о текущей странице. Например: Страница 1 из 11, как но фото. В параметрах настройки можно выбрать, показывать это сообщение или нет.

Kolichestvo-str

spisok-kategoriy

Отличие пагинации от навигации

При настройках категорий, материалов и т.п. вы можете увидеть пункт настроек: Навигация. Отличие Навигации от Разбиения на страницы (пагинация) в следующем. Навигация это постраничное листание материалов и показывается на страницах в виде, например, <<<Предыдущая….Следующая>>>.

Pagenavigation-foto-2

Pagenavigation-foto-1

Пагинация в коде Joomla

В PHP есть класс, который создает интерфейс разбиения на страницы. Это Class Pagination. В CMS Joomla разбиение на страницы определяется в файле Pagination.php. Этот файл по умолчанию есть в ядре Joomla: /public_html/libraries/cms/pagination/pagination.php и может быть в шаблоне сайта.

Вывод пагинации (разбиение на страницы) в коде Joomla

Вывод пагинации нужно искать в следующем каталоге:

/public_html/components/com_content/views/category/tmpl/blog.php и других файлах этого каталога.

div-class-paginator

Или в каталоге рабочей темы: /httpdocs/templates/yougrids/html/com_content/category

Pagin-v-teme

CSS пагинации

Внешний вид интерфейса «Разбиения на страницы» задается в файлах css вашего рабочего шаблона Joomla и зависит от верстки шаблона. Чтобы найти файл с элементом стиля pagination можно посмотреть код элемента в браузере, а проще воспользоваться правой кнопкой мыши. Для этого наведите курсор на элемент пагинатора, нажмите правую кнопку мыши и выберите в меню «Просмотр кода элемент».

Cms-kod

Во всплывшем окне слева увидите код пагинатора, справа CSS код выбранного элемента. В этом коде смотрите, в каком файле CSS задан внешний вид постраничной навигации, потом открываете этот файл в текстовом редакторе и далее исправляете элемент стиля pagination по вашему желанию и по правилам синтаксиса CSS.

CMS

Хаки для пагинации сайта

В качестве примера хака для пагинации сайта приведу пример изменения количества страниц выведенных в пагинаторе. По умолчанию выводится 10 страниц. Чтобы увеличить количество страниц в интерфейсе разделения на страницы откройте в текстовом редакторе файл pagination.php. Найдите строку

$displayedPages = 10;

И поменяйте 10 страниц, например на 50, если конечно, у вас столько контента на сайте.

Я привел этот хак, как пример работы с файлом pagination.php. Но такое редактирование, пропадет при следующем обновлении Joomla, и это обновление временное. Чтобы такого не происходило при каждом обновлении Joomla, нужно сделать предопределение выполнения функции в шаблоне сайта.

Если коротко, то для этого в рабочем шаблоне создается папка html. В эту папку копируются нужный системный файл. Скопированный файл редактируется. В системе предопределяется вывод элементов. Система при вызове элемента, сначала будет искать файл в папке html текущего шаблона, если его не найдет, то воспользуется системным файлом для вызова этого элемента. Файлы, которые будут у вас в папке html не будут меняться при каждом обновлении Joomla. Подробно, постараюсь написать другую статью.

Примечание. Это простой и в принципе, безопасный хак. Но в любом случае, перед любым редактированием кода сайта делайте резервную копию. Как минимум того файла, который редактируете.

На этом все! Тема пагинация на сайте Joomla в этой статье исчерпана.

Другие статьи раздела: Администрирование Joomla 2.5

Администрирование Joomla 3.x

 

Рекомендуем