Jump to main content Jump to doc navigation

Общие параметры сниппетов на базе pdoTools / pdoFetch.

Параметры выборки ресурсов

Эти параметры задают объекты выборки.

Name Description По умолчанию
&class Класс выбираемого объекта modResource
&parents Список родителей для поиска результатов через запятую. Если указать 0, выборка не ограничена. Если id родителя начинается с минуса, он и его потомки исключаются из выборки. Чтобы ограничить выборку по &depth от корня дерева ресурсов, используйте &parents=+0 Текущий ресурс
&depth Глубина поиска дочерних ресурсов от родителя 10
&resources Список ресурсов для поиска результатов через запятую. Если id ресурса начинается с минуса, этот ресурс исключается из выборки.
&templates Список шаблонов для фильтрации результатов через запятую. Если id шаблона начинается с минуса, ресурсы с ним исключаются из выборки.
&context Ограничение выборки по контексту ресурса
&where Дополнительный массив параметров выборки в JSON
&showHidden Показывать ресурсы, скрытые в меню 0
&showUnpublished Показывать неопубликованные ресурсы 0
&showDeleted Показывать удалённые ресурсы 0
&hideContainers Исключить контейнерные ресурсы, то есть ресурсы с «isfolder = 1». 0
&hideUnsearchable Исключить ресурсы, скрытые от поиска
&select Список полей выборки через запятую. Можно указать JSON-массив, например {"modResource":"id,pagetitle,content"}.
&leftJoin Аналог SQL left join
&rightJoin Аналог SQL right join
&innerJoin Аналог SQL inner join
&sortby Любое поле ресурса для сортировки, включая TV, если она указана в &includeTVs. Можно указать JSON-строку с массивом нескольких полей. Укажите «RAND()» для случайной сортировки pagetitle
&sortdir Направление сортировки: по убыванию или по возрастанию ASC
&groupby Поле, по которому группируются результаты
&having Ограничивает выборку сгруппированных строк по условию для всей группы, заданной в &groupby
&limit Ограничение числа результатов выборки. Можно использовать «0» 0
&offset Пропуск результатов от начала 0
&first Номер первой итерации в выводимых результатах 1
&last Номер последней итерации в выводимых результатах Автоматически по формуле (total + first - 1)
&loadModels Список компонентов, модели которых нужно загрузить для построения запроса, через запятую, например &loadModels=ms2gallery,msearch2.
&tvFilters Список фильтров TV с разделителями AND и OR. Разделитель из &tvFiltersOrDelimiter задаёт логическое условие OR, его условия группируются в первую очередь. В каждой группе можно задать список значений через &tvFiltersAndDelimiter. Поиск значений возможен в конкретной TV («myTV==value») или в любой («value»). Например &tvFilters=`filter2==one,filter1==bar%||filter1==foo`. Внимание: фильтрация использует LIKE, а «%» это метасимвол. Поиск идёт по значениям в БД, значения из настроек TV по умолчанию сюда не попадают
&tvFiltersAndDelimiter Разделитель условий AND в &tvFilters. ","
&tvFiltersOrDelimiter Разделитель условий OR в &tvFilters. "
&sortbyTV Дополнительное поле для сортировки всех результатов. Можно указать напрямую в &sortby
&sortdirTV Направление сортировки по дополнительному полю из &sortby. Можно указать напрямую в &sortby
&checkPermissions Укажите, какие права проверять при выводе объектов
&disableConditions Отключает отдельные параметры выборки класса modResource

Параметры шаблонов

Эти параметры настраивают чанки с шаблонами вывода, то есть меняются вместе с представлением.

Name Description
&tpl Имя чанка для вывода ресурса. Если не указано, на экран выводится содержимое полей ресурса
&tplFirst Имя чанка для первого ресурса в результатах
&tplLast Имя чанка для последнего ресурса в результатах
&tplOdd Имя чанка для каждого второго ресурса
&tpl_N Имя чанка для N-го ресурса, например &tpl_4=tpl4th задаст шаблон для 4-го ресурса
&tpl_nN Имя чанка для каждого N-го ресурса, например &tpl_n4=tplEvery4th применится к каждому 4-му ресурсу
&tplCondition Поле ресурса, из которого берётся значение для выбора чанка по условию в &conditionalTpls.
&tplOperator Необязательный оператор сравнения поля ресурса из &tplCondition с массивом значений и чанков в &conditionalTpls.
&conditionalTpls JSON-строка с массивом: ключи сравниваются с &tplCondition, значения это чанки для вывода при успешном сравнении. Оператор сравнения задаётся в &tplOperator. Для операторов «isempty» можно использовать массивы без ключей
&outputSeparator Необязательная строка-разделитель результатов

Параметры результатов

Эти параметры задают, какие данные и как выводить дополнительно.

Name Description По умолчанию
&return Способ вывода результата. chunks вывод чанками, data значения полей, sql SQL-запрос, ids id через запятую chunks
&fastMode Быстрый режим обработки чанков. Все «сырые» теги (условия, сниппеты и т. д.) будут вырезаны. 0
&nestedChunkPrefix Префикс для «быстрых плейсхолдеров», подключаемых параметром &fastMode pdotools_
&idx Можно указать начальный номер итерации для вывода результатов
&totalVar Имя плейсхолдера для сохранения общего числа результатов total
&includeContent Включить поле «content» в вывод 0
&includeTVs Список TV для вывода через запятую. Например «action,time» даст плейсхолдеры [[+action]] и [[+time]].
&includeTVList Псевдоним &includeTVs
&prepareTVs Список TV, которые нужно подготовить перед выводом «1» означает подготовку всех TV из &includeTVs
&processTVs Список TV, которые нужно обработать перед выводом. Если «1», обрабатываются все TV из «&includeTVs»
&tvPrefix Префикс для TV tv.
&prepareSnippet Укажите сниппет, который принимает данные перед выводом в чанк и может их изменить или дополнить 1
&decodeJSON Разбирает поля вроде JSON вместо вывода строкой
&scheme Схема формирования url передаётся в modX::makeUrl() -1 (относительно site_url)
&useWeblinkUrl Учитывать класс ресурса при формировании ссылки
&toSeparatePlaceholders Если указать слово, ВСЕ результаты попадут в отдельные плейсхолдеры, начинающиеся с этого слова и заканчивающиеся порядковым номером строки с нуля. Например «myPl» даст [[+myPl0]], [[+myPl1]] и т. д.
&additionalPlaceholders Установить дополнительные плейсхолдеры
&cache_key Ключ кэша Значение системной настройки cache_resource_key для ресурсов (по умолчанию resource) или default
&cache_handler Обработчик кэша Значение системной настройки cache_resource_handler или xPDOFileCache
&cache Time Время кэширования Значение системной настройки cache_resource_expires или 0 (вечно)

Параметры парсера Fenom

Эти параметры задают настройки парсера Fenom.

Name Description По умолчанию
&fenomModifiers Список сниппетов через запятую, которые можно использовать как модификаторы Fenom

Как вызывать чанки

Все чанки могут иметь один из этих префиксов:

  • @INLINE или @CODE. Код после этого префикса используется как шаблон.
[[!pdoResources?
    &tpl=`@INLINE <li>[[+pagetitle]]</li>`
]]

Сниппеты, другие чанки и output filters нельзя указывать в INLINE-чанках: парсер MODX обработает их первым, и сниппет не получит то, что вы ожидали.

  • @FILE. Вместо чанка из БД используется содержимое файла. Путь к файлу задаётся системной настройкой pdotools_elements_path. Имя файла с расширением .tpl или .html.
[[!pdoResources?
    &tpl=`@FILE fileBasedRow.tpl`
]]
  • @TEMPLATE. Указывается id или имя шаблона. Если пусто, для каждого ресурса используется его собственный шаблон.
[[!pdoResources?
    &tpl=`@TEMPLATE 10`
]]
  • @CHUNK. Аналогично указанию имени чанка.
[[!pdoResources?
    &tpl=`@CHUNK tpl.Resource.row`
]]
[[!pdoResources?
    &tpl=`tpl.Resource.row`
]]

Support the team building MODX with a monthly donation.

The budget raised through OpenCollective is transparent, including payouts, and any contributor can apply to be paid for their work on MODX.

Backers

  • modmore
  • STERC
  • Digital Penguin
  • Jens Wittmann – Gestaltung & Entwicklung
  • CrewMark
  • Fabian Christen
  • Sepia River Studios
  • Dannevang Digital
  • Alex
  • A. Moreno
  • Chris Fickling
  • Stéphane Jäggi
  • Murray Wood
  • Anton Tarasov
  • deJaya
  • JT Skaggs
  • Lefthandmedia
  • eydolan
  • Following Sea
  • Guido Gallenkamp
  • YJ
  • Raffy
  • Snow Creative
  • Nick Clark
  • Guest
  • Helen
  • krisznet
  • Yanni
  • Richard

Budget

$204 per month—let's make that $500!

Learn more