Cоздание списка TV c множественны выбором Ресурсов
MODX (практически, а может и на самом деле), ввел в мир CMS Custom Fields – настраиваемые поля, или как их стали называть – Шаблонные Переменные (TVs). Для выбора TV существует много входных данных, поэтому они образуют базу данных, из чтобы конечный пользователь затем мог их выбрать. Тип входных данных с множественным выбором позволяет пользователю выбрать несколько единиц из списка с разделителями в виде “||”, заданными во входных параметрах. Тип входных данных Списка Ресурсов дает возможность пользователю выбрать Ресурс (Resource) из Дерева Ресурсов (Resource Tree). А что произойдет, если вы захотите, чтобы пользователь смог выбрать мультиресурсы? Это никак не сделать.
Ответ есть, мой друг, и что самое неожиданное – он в документации.
Как всегда, официальное руководство по Входным типам TV (TV Input Types) отвечает на все вопросы.
Ответ есть в разделе Check Box под Advanced.
Использование: http://rtfm.modx.com/display/revolution20/Template+Variable+Input+Types#TemplateVariableInputTypes-AdvancedUsage
Просто разместите нижеприведенный оператор выбора @SELECT в поле значений входных опций (Input Option Values), который можно найти на вкладке Input Options, затем отредактируйте или создайте TV (это также хорошо работает с выпадающим меню Множественного Выбора (Multi-Select), как и с Check Boxes).
<code>@SELECT pagetitle, id FROM modx_site_content WHERE parent=35</code><code> </code>Прервемся на минутку
Это будет запрос «FROM» к таблице базы данных «modx_site_content, который вернет „pagetitle“ как Имя, и „id“ как значение, „WHERE“ всегда будет „parent=35“. Очевидно что вы заменяете „35“ значением того Ресурса, который содержит то, что вы хотите перечислить.
Вот и все. Не могу поверить, как это просто. Т.к. вы делаете это с выпадающим меню Multi-Select или Check Box TV, пользователь может выбрать больше чем один возвращаемый загловок страницы pagetitle, а TV будет выводить IDs.
Внимание! Вы должны выбрать „Delimiter“ как выходную опцию, и задать запятую »," как ограничитель, если хотите использовать результат в качестве свойства в вызовах сниппетов.
Комментарии ()
Услуги по MODX Revolution
Посмотреть все услуги
Оптимизация сайта
Подробнее & Заказать
Создание сайта на MODX Revolution
Подробнее & Заказать
Перенос сайта на MODX Revolution
Подробнее & Заказать
Иначе при переносе сайта и изменении префикса базы все отвалится.