Логотип

Документация по макросам и шаблонам UMI.CMS

Все макросы системы UMI.CMS, выводящие какие-либо списки элементов (объектов или страниц системы), поддерживают так называемый постраничный вывод. Количество элементов выводимых на странице можно задавать напрямую в параметрах при вызове макроса, либо они будут взяты из настроек модуля, методом которого является данный макрос.

Рассмотрим работу постраничного вывода на примере макроса %news lastlist()%:

  • Предположим, что у нас есть лента новостей, в которой имеется уже 25 элементов.

  • Предположим, что на одной странице мы хотим отображать только 10 элементов. Следующие 10 элементов мы хотим отобразить уже на другой странице и оставшиеся 5 — на следующей.

  • Предположим, что в шаблоне отображения ленты макрос вызывается без дополнительных параметров — то есть мы передаем только id или URL ленты, а количество элементов на странице будем брать из настроек модуля "Новости", где мы зададим число 10.

Тогда, при вызове страницы ленты, допустим http://ваш_сайт/vse_novosti/, макрос %news lastlist()%, как и ожидается, вернет только последние 10 новостей. Это — первая страница.

Чтобы отобразить следующие 10 новостей, надо добавить к URL ленты параметр "p=1" через знак "?": http://ваш_сайт/vse_novosti/?p=1. Это — вторая страница.

И наконец, чтобы отобразить оставшиеся 5 новостей нужно набрать: http://ваш_сайт/vse_novosti/?p=2. Это — третья страница, и она же последняя.

Таким образом построение списка номеров страниц для постраничного вывода заключается в грамотном проставлении ссылок с параметрами "p". И для этого существует специальный макрос — %system numpages()%. Им мы и воспользуемся в этой главе.