2016-09-28 48 views
0

我DjangoCMS具有結構:如何使用{%show_menu_below_id%}獲得django cms中的特定子頁面?

--Page一個
----第A.1
---- A.2頁
----第A.3頁
- --Page A.4

使用{%show_menu_below_id 「第一個」 %}表明這一點:

<ul> 
    <li> Page a.1</li> 
    <li> Page a.2</li> 
    <li> Page a.3</li> 
    <li> Page a.4</li> 
</ul> 

我需要再顯示在navegation菜單兩separeted列,如:

<ul> 
    <li> Page a.1</li> 
    <li> Page a.2</li> 
</ul> 
<ul> 
    <li> Page a.3</li> 
    <li> Page a.4</li> 
</ul> 

我該如何得到一些孩子頁?

回答

1

當您爲菜單指定自定義HTML時,您可以做很多事情。模板標籤將以下內容:

{% show_menu 0 100 100 100 "menu_top.html" %} 

而在menu_top.html,你呼籲爲您提供方便children的變量。您可以使用for循環計數器來確定何時插入額外的HTML和分割列表,或者您可以使用菜單項的其他參數(即他們是否有孩子等)。您甚至可以創建菜單修改器,並在需要自定義參數時增強導航樹。

下面是來自Django的CMS repo一個例子:

{% load menu_tags %} 

{% for child in children %} 
<li class="child{% if child.selected %} selected{% 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 }}">{{ child.get_menu_title }}</a> 
    {% if child.children %} 
    <ul> 
     {% show_menu from_level to_level extra_inactive extra_active template "" "" child %} 
    </ul> 
    {% endif %} 
</li> 
{% endfor %} 
+0

切赫,如何以及在哪裏可以看到孩子和孩子候選條件變量?例如,我需要將前5個孩子放在一個UL標籤中,然後再放入另一個UL標籤中... –

+0

您可以使用內置的forloop計數器僅顯示某些項目,或者對於您的情況,切片可能更合適: ''{對於孩子來說%|切片:「:5」%}''' – petr

相關問題