Меню с помощью Usel (для tpl-шаблонизатора)
Задача: сделать дополнительное вертикальное меню.
Решение: для реализации этой задачи мы будем использовать выборку с помощью использования Usel, с помощью этой выборки мы можем вывести в дополнительное меню страницы у которых не стоят галочки "отображать в меню".
1. Заходим в модуль «Шаблоны данных», выбираем вкладку «Типы данных», нажимаем на "+" рядом с "Раздел сайта", далее на "страница контента". В окрывшемся окне нажимаем «Добавить группу», нажимаем «Добавить поле» (назовем его, например, field) тип "кнопка флажок" и нажимаем «Сохранить». Далее заходим в модуль «Структура», определяем какие из страниц мы хотим вывести в дополнительном меню, открываем эти страницы для редактирования и ставим галочку в поле "field".
2. Создаем непосредственно сам шаблон выборки Usel. Шаблон выборки Usel это XML-файл, который должен находится в папке ~/usels/. Подробно о создании шаблона Usel написано в документации разработчиков сайтов [1] Для нашей задачи он будет выглядеть таким образом:
<?xml version="1.0" encoding="utf-8"?>
<selection>
<target expected-result="pages">
<type id="42" />
</target>
<property name="field" value="1" />
</selection>
Где "field"-название, добавленого поля, 42-это id объекта страницы (можно посмотреть в модуле "Шаблоны данных"), назовем наш шаблон выборки for_menu.
3. Для вывода работы выборки используется макрос %data doSelection()%. К примеру такой %data doSelection('default', for_menu)% (где default -это шаблон отвечает за вид вывода выборки, находится по пути ~tpls/data/usel/ его можно отредактировать нужным вам образом , а for_menu- это название нашего шаблона для выборки).
Аналогичным образом мы можем создать неограниченное число выборок и сделать неограниченное число выводов дополнительных меню на разных страницах нашего сайта.