Построение меню
<?php $v['on_0top'] = '{text}'; $v['off_0top'] = '<a href="/{link}"{target}{hint}>{text}</a>'; $v['sep_0top'] = '<br>'; ?>В шаблоне указывается на месте вставки следующий код:
<?php menu('top'); ?>Описание:
- on - меню выбрано
- off - меню не выбрано, в "выключенном" состоянии
- sep - от слова separator - разделитель, будет выводиться после пунктов меню, после последнего не выводится.
- _0 - описывает уровень меню 0,1,2,3 (всего 4 уровня меню в движке)
- top - указывает тип меню (top, left, right, bottom по аналогии верхнее, левое, правое, нижнее)
- {} - указывает подстановку значений {link} - ссылка, {hint} - всплывающая подсказка, {target} - в каком окне открывать, {text} - текст ссылки, {id} - генерирующийся идентификатор по умолчанию текущий номер в массиве меню.
Все эти значения меняются в Панель управления » Править Меню
<?php $v['on_1top'] = '{text}'; $v['off_1top'] = '<a href="/{link}"{target}{hint}>{text}</a>'; $v['sep_1top'] = '<br>'; ?>В месте вывода код:
<?php menu('top',$g->item(0)); ?>$g->item(*) Содержит название (не путать с текстом $g->nav(*)) активного пункта меню. Возвращает пустую стоку =='' если пункт не найден..
К примеру текущая страница: docs / buildingmenu соответствует $g->item(0)=='docs', $g->item(1)=='buildingmenu'.
Это "название" передаёт функции меню название пункта который будет выступать в роли родителя. <?php menu('top','название'); ?>
Само собой, если подменю не описано - вывода не будет.
Функция принимает параметры: menu('Тип меню', 'родитель подменю1', 'родитель подменю2', 'родитель подменю3', 'вывести нестандартный шаблон построения меню').
Пример выводим подменю 4 уровня со специальным шаблоном для него:
<?php $v['on_spec'] = '{text}'; $v['off_spec'] = '<a href="/{link}"{target}{hint}>{text}</a>'; $v['sep_spec'] = '<br>'; ?>В месте вывода код:
<?php menu('top',$g->item(0),$g->item(1),$g->item(2),'spec'); ?>Ещё вариант если выводим к примеру только 1 подуровень:
<?php menu('top',$g->item(0),'','','spec'); ?>Для определения существует ли меню/подменю есть функция ishave('Тип меню', 'родитель подменю1', 'родитель подменю2', 'родитель подменю3') ненужные родители можно опускать.