Меню и навигация
Существует четыре тега шаблонов для использования в шаблонах, которые связаны с меню:
Чтобы использовать любой из этих тегов шаблона, вам необходимо иметь {% load menu_tags %}
в вашем шаблоне перед строкой, на которой вы вызываете тег шаблона.
Примечание
Обратите внимание, что меню живут в приложении menus
, которое хотя и тесно связано с приложением cms
, существует независимо от него. Меню можно использовать в любом приложении, а не только в django CMS.
показать_хлебную крошку
Отображает навигационные хлебные крошки текущей страницы. Шаблон HTML можно найти по адресу menu/breadcrumb.html
.:
Или с пользовательским шаблоном и отображением только уровня 2 или выше:
{% show_breadcrumb 2 "myapp/breadcrumb.html" %}
Обычно в хлебных крошках отображаются только страницы, видимые в навигации. Чтобы включить все страницы в хлебную крошку, напишите:
{% show_breadcrumb 0 "menu/breadcrumb.html" 0 %}
Если текущий URL не обрабатывается CMS или расширителем навигации, текущий узел меню не может быть определен. В этом случае вам может понадобиться предоставить собственную хлебную крошку через шаблон. В основном это необходимо для таких страниц, как вход в систему, выход из системы и сторонние приложения. Этого можно легко добиться с помощью блока, который вы перезаписываете в своих шаблонах.
Например, в вашем base.html
:
<ul>
{% block breadcrumb %}
{% show_breadcrumb %}
{% endblock %}
<ul>
А затем в шаблоне вашего приложения:
{% block breadcrumb %}
<li><a href="/">home</a></li>
<li>My current page</li>
{% endblock %}
Свойства узлов навигации в шаблонах
Он последний на дереве? Если это так, то у него нет детей.
Уровень узла. Начинается с 0.:
Уровень узла от корневого узла меню. Начинается с 0. Если ваше меню начинается с уровня 1 или у вас есть «мягкий корень» (описанный в следующем разделе), первый узел все равно будет иметь 0 в качестве menu_level
.:
{{ node.get_absolute_url }}
Абсолютный URL узла, без указания протокола, домена или порта.:
Заголовок на текущем языке узла.:
Если true, то этот узел является текущим выбранным/активным на данном URL.:
Если true, то этот узел является предком текущего выбранного узла.:
Если true, то этот узел является родственником текущего выделенного узла.:
Если true, то этот узел является потомком текущего выбранного узла.:
Если true, то этот узел является soft root. Страница может быть отмечена как мягкий корень в ее «Расширенных настройках».
Классы и функции системы меню