我的page.html有这个
{% extends "base.html" %}
{% load cms_tags menu_tags %}
{% block title %}{% page_attribute "page_title" %}{% endblock title %}
{% block content %}
{% placeholder "content" %}
{% show_menu 2 0 0 100 %}
{% endblock content %}
但依赖于当前页面的级别,我必须在页面上显示不同的元素,类似这样的
{% if node.menu_level == 2 %}
{% show_menu 2 0 0 100 %}
{% else %}
#do something different
{% endif %}
怎么做?如何知道当前页面的级别?
答案 0 :(得分:1)
我这样做是为了根据页面的祖先选择相关的页面标题;
{% if request.current_page.get_ancestors|length <= 1 %}
<h1 class="pipe-title pipe-title--inset">
{{ request.current_page.get_page_title }}
</h1>
{% else %}
{% for ance in request.current_page.get_ancestors %}
{% if ance.depth == 2 %}
<h1 class="pipe-title pipe-title--inset">{{ ance.get_page_title }}</h1>
{% endif %}
{% endfor %}
{% endif %}
所以你可以根据菜单树中的页面深度做任何你想做的事。