Расширение breadcrumbs в Django cms
24 мая 2016 г. 13:09
Наглядный пример, как можно расширить навигационную цепочку или по-другому breadcrumbs в Django cms.
Например, нужно добавить ещё одни дополнительный элемент к хлебным крошкам. Тогда в шаблоне пишем:
<div class="row"> {% with extra_ance='extra element' %} {% show_breadcrumb 0 "my_app/breadcrumbs.html" %} {% endwith %} </div>
А сам файл breadcrumbs.html может быть следующим:
<ul> {% for ance in ancestors %} {% if not forloop.last or extra_ance %} <li><a href="{{ ance.get_absolute_url }}">{{ ance.get_menu_title }}</a></li> {% else %} <li class="active">{{ ance.get_menu_title }}</li> {% endif %} {% endfor %} {% if not forloop.last or extra_ance %}<span class="separator">›</span>{% endif %} {% if extra_ance %} <li class="active">{{ extra_ance }}</li> {% endif %} </ul>
Обратите внимание, как изменяется логика при существовании переменной extra_ance. В данном примере можно добавить один дополнительный элемент (<li>) к списку. Нетрудно сделать и добавление нескольких элементов: нужно лишь в breadcrumbs.html передать, допустим, переменную extra_elements и добавить цикл.
Похожие статьи:
Представляю вашему вниманию книгу, написанную моим близким другом Максимом Макуриным: Секреты эффективного управления ассортиментом.
Книга предназначается для широкого круга читателей и, по мнению автора, будет полезна специалистам отдела закупок и логистики, категорийным и финансовым менеджерам, менеджерам по продажам, аналитикам, руководителям и директорам, в компетенции которых принятие решений по управлению ассортиментом.
Комментарии: 0