0.00
Рейтинг
0.01
Сила
  • avatar v_danek
  • 0
можно и без костылей, попробуй так:
в папку templates/skin/имя_скина кидаешь файл с именем menu.MyMenu.tpl — это шаблон меню, которое будет отображаться. Напиши в этот шаблон то, что хочешь видеть в меню.
Потом отыскиваешь шаблон, который у тебя используется для отображения статических страниц, и там находишь строчку, где подключается заголовок, она выглядит так:
{include file='header.tpl'}

и туда пишешь имя твоего меню, то которое указал в имени шаблона, вот так:
{include file='header.tpl' menu ='MyMenu'}

после этого меню должно отобразиться.
p.s. Переменная $menu, которой присваивается значение, используется в header_nav.tpl, где и происходит подключение меню.
Теперь все стало ясно. Спасибо PSNet и stfalcon, вы открыли мне глаза. Надо было внимательнее отнестись к фичам PHP5.
Еще труднее понять то, что в классе Router (engine\classes\Router.class.php) этот метод вызывается как $this->Hook_Run, что как бы намекает нам, на то что Hook_Run должен быть объявлен либо в этом классе, либо в родительском. Однако в Router такого метода нет, а родительский класс — Object, в котором тоже ничего нет.
И где Hook_Run?
там я, конечно, посмотрел в первую очередь, но там его НЕТ: в файле engine\classes\Hook.class.php объявлен абстрактный класс Hook. Но в нем объявлены только методы AddHook, AddDelegateHook, RegisterHook, __call, __construct. Hook — наследник Object, но в Object нет ни Hook_Run ни чего-либо еще.