目前,我列出了所有帖子类别,但我希望排除某些类别,例如未分类的。
这就是我现在开始分类的方式:
$context['categories'] = Timber::get_terms('category');
并通过
列出类别{% for cat in categories %}
<li><a style="margin: 0;" href="{{cat.link}}">{{cat.name}}</a></li>
{% endfor %}
答案 0 :(得分:1)
你有几种可能性。这是两个:
使用Timber::get_terms()
或Timber::get_posts()
时,您可以使用与WordPress的get_terms()
function相同的参数。
exclude
参数需要您要排除的字词ID。未分类通常具有ID 1.
$context['categories'] = Timber::get_terms( 'category', array(
'exclude' => 1
) );
Twig允许您add a condition to the for loop排除要在循环中忽略的项目。
通过这种方式,您可以检查slug是否“未分类”,但您也可以使用category.id != 1
检查ID。
{% for cat in categories if category.slug != 'uncategorized' %}
<li><a href="{{ cat.link }}">{{ cat.name }}</a></li>
{% endfor %}
答案 1 :(得分:0)
如果您知道不想包含的类别的名称,则可以使用以下代码 not in 。
{% set categorisedValues = ['one','two','three','four','five'] %}
{% set uncategorisedValues = ['one','two'] %}
{% for categorised in categorisedValues %}
{% if categorised not in uncategorisedValues %}
{{ categorised }}
{% endif %}
{% endfor %}