我正在使用以下内容显示顶级类别:
$context['categories'] = Timber::get_terms('category');
$categories = get_categories( array(
'hide_empty' => '0',
'exclude' => '1',
'orderby' => 'id',
'order' => 'ASC'
) );
$context['categories'] = $categories;
{% for cat in categories %}
<li {% if term.slug == cat.slug %}class="active"{% endif %}><a href="{{blog.link}}category/{{cat.slug}}">{{cat.name}}</a></li>
{% endfor %}
但是我需要在一个下拉菜单(引导程序4)中显示子类别。但是我不确定如何访问它们?我想他们已经可以使用cat.child
之类的东西了?
答案 0 :(得分:0)
好吧,这比我想象的要容易得多, 您(和我)完全以错误的方式这样做。 首先,您必须转到主题,然后选择菜单。 那么您必须使所有子类别都属于您希望他们拥有的类别的子代。
完成此操作后,只需输入以下代码即可使用下拉菜单。
{% for item in menu.get_items %}
<li class="nav-item {{ item.classes | join(' ') }}">
{% if item.get_children %}
<div class="dropdown">
<button type="button" class="btn btn-secondary dropdown-toggle" id='dropdownMenuButton' data-toggle="dropdown" aria-haspopup="true" aria-expended="false" >
{{ item.title }}
</button>
<div class="dropdown-menu" aria-labelledby='dropdownMenuButton'>
{% for child in item.get_children %}
<a class="dropdown-item" href="{{child.link}}">{{child.title}}</a>
{% endfor %}
</div>
</div>
{% else %}
<a href="{{ item.link }}" title="{{ item.title }}" class="nav-link">{{ item.title }}</a>
{% endif %}
</li>
{% endfor %}
对我来说这至少有效