1

DjangoCMSを使用してsub_menu.htmlテンプレートをカスタマイズしようとしていますが、現在、メニューに次のコードがあります。

{% if children %}
<div class="unit subnav">
<h3>{% page_attribute "menu_title" %}</h3>
<ul>
    {% for child in children %}
        <li class="{% if child.selected %}on{% endif %}{% if child.ancestor %}ancestor{% endif %}{% if child.sibling %}sibling{% endif %}{% if child.descendant %}descendant{% endif %}">
            <a href="{{ child.attr.redirect_url|default:child.get_absolute_url }}" title="{{ child.get_menu_title }}">{{ child.get_menu_title }}</a>
        </li>
    {% endfor %}
    </ul>
</div>
{% endif %}

したがって、基本的に、これはページに子があるかどうかを検出し、このページの子が存在する場合はサブナビゲーションを追加します。

ここまでは順調ですね。

私の問題は、子ページ自体に移動するとメニューが消えるので、ページがレベル1より下の「子」であるかどうかを検出したいということです。これにより、ナビゲーションを持つすべてのページが停止します(すべてのページであるため)私が推測するホームページの子供たち)が、ナビゲーションのメインレベルより下の子供たちがメニューを表示できるようにする必要があります。

誰かが手を貸したり、私を正しい方向に向けたりできるなら、それは素晴らしいことです。

4

1 に答える 1

3

OK、それは人々には意味がないかもしれませんが、私は私のsubnavテンプレート内の次のifステートメントでこれの底に到達することができました...

{% if children or request.current_page.level > 0 %} subnav in here {% endif %}
于 2012-09-24T10:35:22.477 に答える