Что такое getPage?
Основное назначение сниппета – презентация, навигация, опциональное кэширование, многостраничный просмотр из различных Элементов, что подразумевает ограничении и изменение свойств для ограничения набора данных, размещение плейсхолдера, с помощью которого getPage возвращать общее число элементов страницы.
Системные требования сниппета getPage
- MODx Revolution 2.0.0-beta5 или более новая версия
- PHP5 или более новая версия
История разработки
getPage написан Jason Coward (opengeek) и опубликован 19 Марта 2010
Этот сниппет ничего не выполняет самостоятельно, и зависит от других сниппетов для возращения выходных данных для определенной страницы (или массива данных в виде определенного набора). К примеру, такие сниппеты как getResources, getFeed, и Archivist могут быть объединены с помощью getPage. |
Использование
getPage сниппет может быть вызван с помощью следующего тега:
|
Не кэшируйте getPage не должен вызваться некэшируемым в кэшируемом ресурсе. Лучше всего вызывать getPage с некэшируемым маркером “!”, а кеширование обеспечить с помощью внешних ресурсов. Это же правило применяется для представления плейсхолдера с помощью свойства pageNavVar (page.nav по умолчанию), эти выходные данные некэшируются в кэшируемом контенте страницы. |
|
|
Необходимые свойства
Необходимо задать свойства элемента, а также все дополнительные свойства тех элементов, которые вызываются с помощью getPage.
Доступные свойства
Обязательные свойства
Имя |
Описание |
Значение по умолчанию |
element |
Имя modElement для обработки выходных данных. |
|
Свойства страницы
Имя | Описание | Значение “ по умолчанию” | Доступно в версии |
limit | Число результатов на странице, может быть отменено с помощью $_REQUEST. В версии 1.2.2+, $_GET данные обрабатываются до $_REQUEST | 10 | |
offset | Отступ, или стартовое положение записи в пределах массива данных для обработки результатов текущей страницы, следует учитывать результаты, ограничения и параметры VarKey. | 0 | |
page | Отображаемая страница, определяется значением _REQUEST , переменная задается VarKey. | Вычисляется | |
pageCount | Общее число страниц | Вычисляется | |
pageVarKey | Маркер свойств, отображает текущую страницу согласно $_REQUEST, и устанавливает значение страницы. В версии 1.2.2+, $_GET данные обрабатываются до $_REQUEST | page | |
totalVar | Маркер плэйсхолдера, содержащего общее число записей в рамках массива, разделяемого на страницы | total | |
total | Общее число записей, разбиваемых на страницы (см. totalVar ) | Вычисляется | |
firstItem | 1-based индекс первого отображаемого элемента на текущей странице. | Вычисляется | |
lastItem | 1-based индекс последнего отображаемого элемента на текущей странице. | Вычисляется | |
pageOneLimit | Дополнительный лимит количества результатов для первой страницы, может отличаться от основного лимита. | 1.2.2-pl |
Навигационные свойства таблицы
Имя | Описание | Значение “по умолчанию” |
pageLimit | Максимальное число ссылок страницы, отображаемое при обработке меню навигации страницы. | 5 |
pageNavVar | Маркер плейсхолдера, устанавливающегося вместе с меню навигации. | page.nav |
Свойства шаблона навигации по странице
| Вы можете не изменять свойства данного tpl непосредственно из сниппета, т.к. последовательность, в которой производится парсинг тэгов, определена в Revolution. Если вы хотите изменить данные значения по умолчанию, используйте следующие действия:
[ [!getPage@PropertySetName? &element=`getResources` &parents=`3` ...]] 4141 | |||
Имя | Описание | Значение по умолчанию | Доступен в версии. | |
pageNavOuterTpl | tpl с контентом для контроля слоя с элементами навигации. | [ [+first]][ [+prev]][ [+pages]][ [+next]][ [+last]] 4141 | 1.2.0-pl | |
pageNavTpl | tpl с контентом, представляющим собой одну страницу элементов навигации. | <li><a[ [+title]] href="[ [+href]]">[ [+pageNo]]</a></li> 4141 | ||
pageActiveTpl | tpl с контентом, представляющим собой текущую страницу элементов навигации. | <li[ [+activeClasses]]><a[ [+activeClasses:default=` class="active"`]] href=""> </a></li> 4141 | ||
pageFirstTpl | tpl с контентом, представляющим собой первую страницу элементов навигации. | <li class="control"><a[ [+classes]][ [+title]] href="">First</a></li> 4141 | ||
pageLastTpl | tpl с контентом, представляющим собой последнюю страницу элементов навигации. | <li class="control"><a[ [+classes]][ [+title]] href="[ [+href]]">Last</a></li> 4141 | ||
pagePrevTpl | tpl с контентом, представляющим собой предыдущую страницу элементов навигации.. | <li class="control"><a[ [+classes]][ [+title]] href="[ [+href]]"><<</a></li> 4141 | ||
pageNextTpl | tpl с контентом, представляющим собой следующую страницу элементов навигации. | <li class="control"><a[ [+classes]][ [+title]] href="[ [+href]]">>></a></li> 4141 | ||
| | | | |
Свойства кэширования
Имя |
Описание |
Значение “по умолчанию” |
cache |
Отображается уникальный URI, если контент каждой страницы кэшируется (это не тот же параметр что и pageVarKey). |
Значение настроек кэширования или false |
cache_resource_key |
Маркер, идентифицирующий xPDOCache запрос, используемый для кэширования контента страницы. |
Значение настроек cache_resource_key setting, или default |
cache_resource_handler |
Маркер, идентифицирующий xPDOCache производный класс, используемый для запроса. |
Значение настроек cache_resource_handler setting, или xPDOFileCache |
cache_expires |
Отображает время хранения каждого элемента в КЭШе ,в секундах. 0 означает хранение в КЭШе до удаления вручную, если нет дополнительных настроек, данные идентифицируются по предустанвленному значению cache_resource_key . |
Значение настроек cache_expires setting, или 0 |
Дополнительные свойства
Имя | Описание | Значение “по умолчанию” |
elementClass | Вторичный classname modElement, который нужно вызвать с помощью getPage и использовать как выходные данные, например modChunk или по умолчанию modSnippet | modSnippet |
namespace | Исполняемый элемент namespace, присоединяемый к плейсхолдеру для выполнения специфических запросов сниппетом getPage. | |
toPlaceholder | Обозначает элемент, не посылаемый за пределы getPage, размещающий плейсхолдер, содержащий контент, необходимый getPage в данный момент. Это позволяет getPage кэшировать плейсхолдер с выходными данными словно это присланный элемент, и использовать его из кэша |
Примеры
Страница со списком дочерних Resourceы текущих Resources, используя чанк вызываемый 'myRowTpl'.
<div class="pageNav">
</div>
Страница с ресурсами до ресурса с ID '5', кроме ресурса 10, созданная с использованием вызова 'myRowTpl':
<div class="pageNav">
</div>