getResourceField – простой сниппет, предназначенный для отображения поля, включающего переменные шаблона ресурсов для MODx Revolution..
История разработки
getResourceField впервые опубликован16 Сентября 2010 paulmerchant, соавтор Shaun McCormick
Загрузка
Сниппет можно загрузить с помощью Package Manager или непосредственно из Repository.
Использование
Минимальный синтаксис следующий:
Возвращает pagetitle текущего ресурса.
Параметры getResourceField
Имя |
Описание |
Значение “по умолчанию” |
id |
ID данных, полученных из поля |
$modx->resource->get('id') |
field |
Возвращаемое имя поля или шаблона |
?pagetitle |
isTV |
Если значение 1 или true поле считается переменной шаблона |
false |
processTV |
Если значение 1 или true, переменная шаблона будет обработана согласно ее выходных данных. |
false |
default |
Значение (строковое) возвращается, если поле не найдено или пустое |
|
Примеры использования
Возврат pagetitle из источника с id 123:
Будет сделан возврат значения TV из исходного ресурса с именем myTV, если нет данных, будет выдано сообщение 'Sorry, no data available'
Возврат поля introtext из исходника (UltimateParent snippet должен быть инсталлирован)
Ошибки
Ошибка заключается в том, что этот сниппет может зациклить редирект. В примере рассмотрен случай, в котором вы задаете шаблонную переменную на страничке, т.е. [[*featured_article]] и затем используете ее в getResourceField
Вызов сниппета:
Если TV не определен, по умолчанию используется id текущей страницы. Если сниппет вызывается содержимым страницы, и вы запрашиваете содержимое как поле, то сниппет может войти в цикл, т.к. запросу не хватает времени для такого количества редиректов.
Итог: если сниппет вызывается изнутри тем же полем, которое вы вызываете, например контент, то нужно убедиться, что id параметр не ведет на текущую страницу.