我有一个结构,我只想定位所有1级条目下的所有2级条目,但要显示所有1级条目 小狗: 牧羊犬,贵宾犬,斯塔菲
鸟类:鸽子,海鸥,鹦鹉 猫:虎斑猫,蓬松猫,Bermise
所以我的菜单显示“狗,鸟,猫”,而在“猫<li>
”中显示所有猫
我在任何回溯项下都获得了所有level(2)物品。不只是猫
{% set interests = craft.entries.section('interests').level(1) %}
<div>
<ul>
{% for interest in interests %}
{% if interest.title != 'Cats' %}
<li>
<a href="{{ interest.url }}">
{{ interest.title }}
</a>
</li>
{% endif %}
{% endfor %}
</ul>
<ul>
<li>
<a href="/">Cats</a>
<ul>
{% for interest in craft.entries.section('interests').level(2) %}
<li>
<a href="{{ interest.url }}">
{{interest}}
</a>
</li>
{% endfor %}
</ul>
</li>
</ul>
</div>
我怎么只能找回猫下的人?
还有没有更清洁的方法可以做到这一点?无需检查标题是否为!=
“猫”而不是硬编码“猫”
您能解释一下它是如何工作的,为什么我的情况糟透了吗?
答案 0 :(得分:0)
我建议使用Craft的nav标签来完成此操作。一种不对猫进行硬编码的干净方法是,创建“菜单”结构,在其中创建带有条目字段字段的新条目,以为每个条目选择一个感兴趣的条目,但猫除外,而是获取该条目部分。希望这会有所帮助。
{% set interests = craft.entries.section('interests').level(1) %}
<ul id="nav">
{% nav interest in interests %}
{% if interest.title != 'Cats' %}
<li>
<a href="{{ interest.url }}">{{ interest.title }}</a>
{% ifchildren %}
{% if interest.level == 2 }
<ul>{% children %}</ul>
{% endif %}
{% endifchildren %}
</li>
{% endif %}
{% endnav %}
</ul>