Постраничная навигация
Модуль предназначен для формирования постраничной навигации контента. Модуль состоит только из подключаемой части и шаблона.
Подключение
Подключаемая часть – файл modules/paginator/paginator.inc.php. В нем описан класс Paginator_inc. В модуле к объекту классам можно обратится через переменную $this->diafan->_paginator. Экземпляр класса создается при первом вызове переменной.
Свойства
Методы
Пример
// 1. Определяем свойства класса: // номер текущей страницы $this->diafan->_paginator->page = $this->diafan->page; // адрес первой страницы // вычисляем с помощью подключения "Маршрутизатор" $this->diafan->_paginator->navlink = $this->diafan->_route->current_link("page"); // или задаем вручную $this->diafan->_paginator->navlink = "news.html"; // шаблон последующих страниц // вычисляем с помощью подключения "Маршрутизатор" $this->diafan->_paginator->navlink_tpl = $this->diafan->_route->current_link("", array("page" => "%d")); // или задаем вручную $this->diafan->_paginator->navlink_tpl = 'news/page%d/';
//вместо переменной navlink_tpl можно задать utlpage, тогда navlink_tpl будет равна navlink + urlpage $this->diafan->_paginator->urlpage = 'page%d/';
// количество новостей $this->diafan->_paginator->nen = DB::query_result("SELECT COUNT(*) FROM {news}"); // 2. Получаем список ссылок в постраничной навигации $links = $this->diafan->_paginator->get(); // 3. Отправляем запрос к базе данных для получения списка новостей, ограниченных данной страницей $result = DB::query_range("SELECT * FROM {news}", $this->diafan->_paginator->polog, $this->diafan->_paginator->nastr); // 4. Подставляем полученные данные в шаблон // в моделе модуля $this->result["paginator"] = $this->diafan->_tpl->get('get', 'paginator', $links); // или в шаблоне модуля echo $this->get('get', 'paginator', $links);
Шаблон
В шаблоне описаны две функции: get и get_admin. Первая используется для пользовательской части, вторая для административной. Вы можете создать свой шаблон функцию и использовать ее в своем модуле.
CSS-форматирование
.paginator{} – навигация «Постраничный вывод»
Файлы
-
modules/paginator/paginator.inc.php – формирует постраничную навигацию;
-
modules/paginator/paginator.view.php – шаблон постраничной навигации.
Не понятно? Уточните
|