Вывод ресурсор в modX в зависимости от значения tv параметра.

Количество просмотров: 142

Итак, перед нами стоит задача вывести ресурсы в зависимости от значения tv-параметра. Для данных целей будем использовать популярный плагин pdoResources

В вызов сниппета pdoResources необходимо добавить условие фильтрации


[ [!pdoResources? 
&parents=`4` 
&tpl=`advantage-[ [++ElementKey]]` 
&showUnpublished=`1` 
&includeTVs=`advantage-image-[  [++ElementKey]], advantage-text-[ [++ElementKey]], advantage-description-[ [++ElementKey]],advantage-output-[ [++ElementKey]]` 
&prepareTVs=`1` 
&processTVs=`1` 
]]

 

Случай 1: tv-параметр advantage-output-[ [++ElementKey]]  не имеет значения по умолчанию, тогда вызов будет таким

[ [ !pdoResources? 
&parents=`4` 
&tpl=`advantage-[ [++ElementKey]]` 
&showUnpublished=`1` 
&includeTVs=`advantage-image-[ [++ElementKey]], advantage-text-[ [++ElementKey]], advantage-description-[ [++ElementKey]],advantage-output-[ [++ElementKey]]` 
&prepareTVs=`1` 
&processTVs=`1` 
&tvFilters=`advantage-output-[ [++ElementKey]]===Yes`
]]

Случай 2: tv-параметр advantage-output-[ [++ElementKey]]  имеет значение по умолчанию No, тогда вызов будет таким

[ [!pdoResources? 
&parents=`4` 
&tpl=`advantage-[ [++ElementKey]]` 
&showUnpublished=`1` 
&includeTVs=`advantage-image-[ [++ElementKey]], advantage-text-[ [++ElementKey]], advantage-description-[ [++ElementKey]],advantage-output-[ [++ElementKey]]` 
&prepareTVs=`1` 
&processTVs=`1` 
&where=`{"advantage-output-[ [++ElementKey]]:!=":"No"}`
]]

Примечание: при копировании необходимо убрать лишний пробел между скобками



© 2015-2019 Goodweb.me --- Карта сайта --- info@goodweb.me

Наверх