В глобальном шаблоне передается массив $items, в частности он используется для формирования "breadcrumbs". Мне же надо формировать их непосредственно в шаблоне "topicViewTemplate".
Вообщем если кому-то еще пригодится:
Лезем в файлик
admin/applications/forums/modules_public/forums/topics.php и ищем строки
if ( is_array( $this->nav ) AND count( $this->nav ) ) { foreach( $this->nav as $_nav ) { $this->registry->output->addNavigation( $_nav[0], $_nav[1], $_nav[2], $_nav[3] ); } }
Вырезаем их и вставляем немного выше, над строкой:
$template = $this->registry->output->getTemplate('topic')->topicViewTemplate( $this->forum, $this->topic, $post_data, $displayData );
В итоге это должно будет выглядеть примерно так:
if ( is_array( $this->nav ) AND count( $this->nav ) ) { foreach( $this->nav as $_nav ) { $this->registry->output->addNavigation( $_nav[0], $_nav[1], $_nav[2], $_nav[3] ); } } $template = $this->registry->output->getTemplate('topic')->topicViewTemplate( $this->forum, $this->topic, $post_data, $displayData );
Теперь идем в наш шаблон 'topicViewTemplate'.
Добавляем в переменные $items.
И в том месте где нам необходимо вставить "хлебные крошки" пишем:
<php> $items = $this->registry->output->_navigation; </php> <ul id='breadcrumb' class='left'> <foreach loop="$items as $idx => $data"> <li> <span class='nav_sep'>{parse replacement="f_nav_sep"}</span> <a href='{parse url="{$data[1]}" base="$data[4]" seotitle="$data[2]" template="$data[3]"}' title='{$this->lang->words['nav_return_to']}{$data[0]}'>{$data[0]}</a> </li> </foreach> <li>>{$topic['title']}</li> </ul>
Возможно придеться еще немного подправить стили.
Если например надо будет продублировать "хлебные крошки" внизу страницы то нужно добавить код без верхних трех строк (он конечно не навредит но всё же).
Я проверял и это замечательно работает на 3х уровнях вложенности.
Рекомендованные комментарии
Нет комментариев для отображения