getResources – это компонент для MODx Revolution, предназначенный для вывода анонсов ресурсов в CMS MODx Revolution.

Установить getResources вы можете через диспетчера пакетов в панели администратора сайта. ВНИМАНИЕ! Для того, чтобы устанавливать дополнения с помощью панели администратора, используя репозитории, необходима поддержка cURL, как расширения PHP.

Требования:

  • MODX Revolution 2.0.0-beta5 или новее
  • PHP5 или новее

История

getResources был написан Джейсоном Ковардом (opengeek) и первый релиз был 30 июня 2009 года.

Использование

Сниппет getResources может быть вызван с помощью тега (необходимо убрать пробелы)

[ [getResources] ] – кешируемый вызов.
[ [!getResources] ] – некешируемый вызов.

Основные параметры

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

Параметр Описание  Значение по умолчанию 
 &tpl  Шаблон вывода ресурсов. Если не указан, будет выведен массив, содержащий все ресурсы  
 &tplOdd  Шаблон четных элементов, согласно значению idx (см. ниже)  
 &tplFirst  Шаблон первого элемента.  
 &tplLast  Шаблон последнего элемента.  
 &tpl_N  Шаблон N-ого элемента. Например, &tpl_4=`tpl4th` - шаблон 4-го  
 &tpl_nN  Шаблон каждого N-ого элемента. Например, &tpl_n4=`tpl4th` - шаблон каждого 4-го элемента  
 &tplCondition  Значение поля ресурса, указанного как ключ в &conditionalTpls. Не работает с TV-параметрами  
 &conditionalTpls Объект JSON, определяющий карту значений полей ресурса и связанных шаблонов вывода (чанков), чтобы использовать данный параметр, необходимо определить поле в параметре tplCondition и создать JSON модель связей: &conditionalTpls = `{" 1 ":" tplA "," 2 ":" tplB "," 3 ": "TPLC"} `

[Примечание: tplOdd, tplFirst, tplLast * и tpl_ {N} будет иметь приоритет над любыми определенниями conditionalTpls]

 
 &tplPath  Директория для чанков, основанных на файлах.   assets_path+ "elements/chunks/"
 &tplWrapper  Чанк-обертка для вывода ресурсов. [Примечание: Не работает с toSeparatePlaceholders]. Плейсхолдер, где элементы выводятся в .  
 &wrapIfEmpty  Если true - Выводить Шаблон-обертку, если произошел пустой вывод.  false
 &toPlaceholder  Вывод в определенный плейсходер.  
 &toSeparatePlaceholders  Если установлено, будет выводить каждый результат в отдельный плейсхолдер с суффиксом - порядковым номером (начиная с 0).  

@FILE и @INLINE шаблоны

Вы можете использовать @FILE и @INLINE шаблоны:

  • @FILE - Этот префикс позволяет использовать файл вместо чанка из базы данных. Путь и имя файла по умолчанию assets_path+ "elements/chunks/, если вы не указали в параметре tplPath. 
  • @INLINE- Этот префикс позволяет использовать шаблон, прописанный прямо в значении параметра. Рекомендуется использовать только при указании свойства шаблона в [Наборе параметров], в противном случае любые плейсхолдеры в вашем чанке могут быть обработаны, прежде чем чанк передастся GetResources.

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

 

Параметр  Описание  Значение по умолчанию 
 &parents Список id родителей через запятую. Используйте значение -1, чтобы игнорировать параметр &parents и использовать параметр &resources  id текущего ресурса
 &resources  Список id ресурсов, которые должны быть включены в выборку.  
 &depth  Глубина просмотра.  10
 &tvFilters

 Фильтр по TV-параметрам. Задается следующей конструкцией: [(tvname)( operator)]( value)] 

Оператор ИЛИ - ||

Оператор И - ,

Оператор LIKE - %

 
 &sortby

 Сортировка ресурсов. Можно указать как одно поле, так и несколько в формате JSON.

Примеры:

&sortby=`RAND()` - случайный порядок

&sortby=`{"publishedon":"ASC","createdon":"DESC"}` - сортировка по нескольким полям

&sortby=`FIELD(modResource.id, 4,7,2,5,1 )` - своя сортировка

 createdon
 &sortbyAlias  Сортировка по псевдониму  
 &sortbyEscaped  Игнорируемое поле сортировки, указанное в &sortby  
 &sortdir  Направление сортировки  DESC
 &sortbyTV  Сортировка по TV-полю  
 &sortdirTV Направление сортировки по TV DESC
 &sortbyTVType Сортировка по типу данных TV string
 &limit Количество выводимых ресурсов 5
 &offset Смещение при выборке 0
 &where Условие выборки, указанное в JSON формате. Например, &where=`{"template:=":1, "OR:template:=":2}`  
 &context Выборка по контексту. По умолчанию все.  

 Другие параметры

Параметр  Описание  Значение по умолчанию
 &showUnpublished  Если 1, то будут выведены неопубликованные ресурсы.  0
 &showDeleted  Если 1, то будут выведены ресурсы помеченные на удаление  0
 &showHidden  Если 1, то будут выведены ресурсы отмеченные как "Не показывать в меню"  0
 &hideContainers  Если 1, то будут скрыты ресурсы-контейнеры  0
 &includeContent  Включить в выборку поле содержимое ресурса  0
 &includeTVs  Включить в выборку TV-параметры  0
 &includeTVList  Список TV через запятую для включения через запятую. Необходимо значение параметра  &includeTVs установить в 1.  
 &prepareTVs  Подготовка медиа TV-параметров к выводу  1
 &prepareTVList  Список TV через запятую для подготовки медиа TV к выводу  
 &processTVs  Включить рендеринг TV-параметров  0
 &processTVList  Список TV через запятую для включения рендеринга.  
 &tvPrefix  Префикс у плейсхолдеров TV-параметров в чанке.  tv.
 &idx  Стартовый номер для плейсхолдера idx (порядковый номер)  1
 &first  idx первого ресурса  1
 &last idx последнего ресурса  
 &totalVar Название плейсхолдера для вывода общего количества ресурсов в выборке. total
 &debug Если 1, то SQL запрос будет отправлен в лог MODx. 0

Доступные плейсхолдеры

В чанках, используемых в getResources доступны все плейсходеры соответвующие полям ресурса. Кроме того, доступны TV поля, если используется параметр &includeTVs=`1`, только с префиксом, указанным в параметре  &tvPrefix. Также доступны два плейсхолдера: idx - порядковый номер, и total - количество ресурсов в выборке.

Примеры использования данного сниппета вы можете посмотреть в видео Блог на MODx Revo - часть 4

Также можете почитать статью Полезные выборки с помощью getResources.