Меню с помощью Usel (для tpl-шаблонизатора) — различия между версиями
SerjK (обсуждение | вклад) |
SerjK (обсуждение | вклад) |
||
Строка 3: | Строка 3: | ||
'''Решение:''' для реализации этой задачи мы будем использовать выборку с помощью использования Usel, с помощью этой выборки мы можем вывести в дополнительное меню страницы у которых не стоят галочки "отображать в меню". | '''Решение:''' для реализации этой задачи мы будем использовать выборку с помощью использования Usel, с помощью этой выборки мы можем вывести в дополнительное меню страницы у которых не стоят галочки "отображать в меню". | ||
− | 1. Заходим в модуль «Шаблоны данных», выбираем вкладку «Типы данных», нажимаем на | + | 1. Заходим в модуль «Шаблоны данных», выбираем вкладку «Типы данных», нажимаем на "Раздел сайта". В окрывшемся окне нажимаем «Добавить группу», нажимаем «Добавить поле» (назовем его, например, field) тип "кнопка флажок" и нажимаем «Сохранить». Далее заходим в модуль «Структура», определяем какие из страниц мы хотим вывести в дополнительном меню, открываем эти страницы для редактирования и ставим галочку в поле "field". |
2. Создаем непосредственно сам шаблон выборки Usel. Шаблон выборки Usel это XML-файл, который должен находится в папке ~/usels/. Подробно о создании шаблона Usel написано в документации разработчиков сайтов [http://help-dev.umi-cms.ru/chapter.XSLTTemplates.usel.html] | 2. Создаем непосредственно сам шаблон выборки Usel. Шаблон выборки Usel это XML-файл, который должен находится в папке ~/usels/. Подробно о создании шаблона Usel написано в документации разработчиков сайтов [http://help-dev.umi-cms.ru/chapter.XSLTTemplates.usel.html] | ||
Строка 12: | Строка 12: | ||
<selection> | <selection> | ||
<target expected-result="pages"> | <target expected-result="pages"> | ||
− | <type id=" | + | <type id="9" /> |
</target> | </target> | ||
<property name="field" value="1" /> | <property name="field" value="1" /> | ||
Строка 18: | Строка 18: | ||
</source> | </source> | ||
− | Где "field"-название, добавленого поля, | + | Где "field"-название, добавленого поля, 9-это id объекта раздел сайта (можно посмотреть в модуле "Шаблоны данных"), назовем наш шаблон выборки for_menu. |
3. Для вывода работы выборки используется макрос %data doSelection()%. | 3. Для вывода работы выборки используется макрос %data doSelection()%. |
Версия 14:37, 12 августа 2011
Задача: сделать дополнительное вертикальное меню.
Решение: для реализации этой задачи мы будем использовать выборку с помощью использования 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="9" />
</target>
<property name="field" value="1" />
</selection>
Где "field"-название, добавленого поля, 9-это id объекта раздел сайта (можно посмотреть в модуле "Шаблоны данных"), назовем наш шаблон выборки for_menu.
3. Для вывода работы выборки используется макрос %data doSelection()%. К примеру такой %data doSelection('default', for_menu)% (где default -это шаблон отвечает за вид вывода выборки, находится по пути ~tpls/data/usel/ его можно отредактировать нужным вам образом , а for_menu- это название нашего шаблона для выборки).
Аналогичным образом мы можем создать неограниченное число выборок и сделать неограниченное число выводов дополнительных меню на разных страницах нашего сайта.