Дополнительная вложенность в "хлебных крошках"

+15
1.55K
Для одного проекта понадобилось дать возможность более удобной навигации в "пути по сайту", выведя все страницы, в которые логически входит текущая страница.

Вариант описанный ниже не решит вопрос вложенности urlов, но добавит некоторого удобства. Решений вопроса может быть несколько, мне подошел вариант с правками в шаблоне виджета меню.

Результат будет такой

Иллюстрация

Чтобы получить на своем сайте также, качаем архив menu_right.tpl.zip из моих файлов /users/1009/files.html

Распаковываем в templates/default/assets/ui

И у виджета, выводящего меню в разделе, выбираем Шаблон списка menu_right

Иллюстрация

Все. Вложенность из меню "перенесется" также в "путь по сайту", давая пользователю возможность перейти к "родительским" разделам меню.

Для желающих правки вносить ручками, мой файл отличается от стандартного двумя блоками

  1.  
  2. <?php
  3. $url = "/" . cmsCore::getInstance()->uri;
  4. ?>
  5.  
и

  1.  
  2. <?php
  3. if (!empty($item['parent_id']) && ($url == $item['url'])) {
  4. $dopitem = $menu[$item['parent_id']];
  5. $kk = 1;
  6. while (!empty($dopitem)) {
  7. array_splice($this->breadcrumbs, count($this->breadcrumbs) - $kk, 0, array(
  8. 'title' => $dopitem['title'],
  9. 'href' => $dopitem['url']
  10. )
  11. ));
  12. $dopitem = empty($dopitem['parent_id']) ? false : $menu[$dopitem['parent_id']];
  13. $kk++;
  14. }
  15. }
  16. ?>
  17.  
Демо нет. Сайт еще в разработке.
Решение отдается как есть, баги правиться, пожелания вноситься будут по мере возможности.
0
Алексей Т Алексей Т 5 лет назад #
Прикольная фишка, спасибо. Протестирую.

Еще от автора

Элемент Вопросы/Ответы для конструктора блоков Zbuilder
В приложении к посту архив, при установке которого в компонент Zbuilder будет добавлен элемент Вопросы/ответы, который используется на демо
Конструктор блоков Zbuilder
Я уже делал и использовал на нескольких проектах шорткоды. Мне не понравилось. Потом были просто блоки. Собрал из них несколько проектов.
Про дочерние шаблоны в 2.17.0
В ближайшее время состоится релиз InstantCMS 2.17.
Используя этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.