Вопрос по автоматическому формированию меню
Добрый вечер!
Интересует, как можно формировать меню страниц (page) автоматически?
Я добавил в header_top нужные разделы, а хочу, чтобы при нажатии на любой из них снизу в подменю перечислялись подразделы текущего. Я понял, что надо создать файл menu.page.tpl, однако это мне не помогло.
Надеюсь на вашу помощь! Заранее спасибо.
Интересует, как можно формировать меню страниц (page) автоматически?
Я добавил в header_top нужные разделы, а хочу, чтобы при нажатии на любой из них снизу в подменю перечислялись подразделы текущего. Я понял, что надо создать файл menu.page.tpl, однако это мне не помогло.
Надеюсь на вашу помощь! Заранее спасибо.
18 комментариев
Очень хочется узнать.
Т.е. к примеру у нас есть статическая страница FAQ, у неё есть подстраницы. Ссылка на FAQ прописывается в header_top.tpl темы так:
Как сделать так, чтобы при переходе по ссылке отображались и подстраницы страницы FAQ?
Если в actions/ActionPage/page.tpl самую первую строку запишешь так:
то шаблонизатор в качестве меню будет использовать шаблон menu.page.tpl. Но в этом случае в самом шаблоне должна быть логика, которая выводит в меню подстраницы.
Если есть желание для каждой страницы свой файл-меню сделать, то можно так:
тогда для страницы faq будет цепляться файл menu.page.faq.tpl, для страницы about — menu.page.about.tpl, и т.д.
Огорчает, что это не предусмотрено по-умолчанию =(
Если речь о том, как получить урл текущей страницы в шаблоне то $oPage->getUrl()
З.Ы. Как бы Вы внятно сформулировали вопрос, будучи только изучающим все тонкости движка?
а как можно в шаблоне получить урл текущей страницы?
Внятность формулировки, как правило, мало зависит от знаний нюансов движка. В данном случае четко проговариватеся, что именно требуется, и где именно это требуется.
{$DIR_WEB_ROOT}/{$ROUTE_PAGE_PAGE}/{$oLang->lang}/advert/
$sEvent возвращает только первый уровень {$oLang->lang}
как мне получить advert, чтобы выяснить текущую активную страницу?
site.com/action/event/param0/param1/param2/...
Соответственно доступ к элементам урла:
action -> Router::getAction()
event -> Router::getActionEvent()
paramN -> $this->getParam(N)
как подправить шаблон меню, что бы активный пункт в нем выделялся? т.е. как движку дать это понять?
$sMenuItemSelect
$sMenuSubItemSelect
т.е. есть в меню, например, $sMenuItemSelect=='blog' как сделать $sMenuItemSelect=='123' что бы это было правильно и понималось движком?
в конфиге добавил в \распределение action\
создал САЙТ.РУ\classes\actions\Action123.class.php, но что в него писать, и правильно ли это вообще?