Создание собственного меню

Здравствуйте, как я понял файл меню представляет собой шаблон с именем menu.ИМЯ_МЕНЮ.tpl, потом я его могу уже в шаблоне странице {include file='ШАБЛОН.tpl' menu='ИМЯ_МЕНЮ'}.
Однако когда я так делаю — меню не появляется)) что я делаю не так?))

14 комментариев

avatar
Я делаю иначе: livestreet.ru/blog/2110.html
avatar
я хочу понять как сделать включаемое в файл меню, которое можно будет вызывать из других шаблонов, а не отдельный пункт.
avatar
В стандартном шаблоне header_top.tpl есть такой код:
{if $menu}
  {include file=menu.$menu.tpl}
{/if}
Т.е. надо, чтобы смарти-переменная $menu приняла нужное значение. Делается это двумя способами.

1. Задаем переменную в обработчике экшена:
$this->Viewer_Assign('menu', 'admin');
Ясень пень, шаблон header_top.tpl должен где-то как-то подгружаться при выводе страницы.

2. Задаем перемнную непосредственно при вызове шаблна header_top.tpl:
{include file='header_top.tpl' menu='admin'}

В обоих случаях будет цепляться шаблон меню menu.admin.tpl
avatar
тремя :) можно еще название шаблона указать :)
avatar
можно код?))
avatar
{include file=menu.admin.tpl}
если не подцепит то полный путь :)
avatar
А, ну да, можно явно в нужное место конкретный шаблон меню воткнуть. Но зачем просто, когда можно сложно? :)
avatar
логично :)
avatar
во во! а то я чувствую что что-то пропустил)) спасибо большое!
avatar
При использовании способа «ссылка на админ-панель», ничего не появляется.

Пример кода:

<li {if $sAction=='page' and $sEvent=='test'}class="active"{/if}><a href="{$DIR_WEB_ROOT}/test/">{$aLang.page_test}</a></li>


Разве, в коде что-то не так?
avatar
А переменная $aLang.page_test определена?
avatar
Нет. Я больше ничего не трогал. Делал по аналогии. Как её определить? :)
avatar
templates/language/russian.php
avatar
Спасибо! Заработало :)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.