我正在使用Drupal 8中的分类术语模板页面,我需要能够仅根据填充页面内容的分类术语来显示特定内容。我使用taxonomy-term.twig.html模板作为起点,但我没有运气比较字符串值与{{name}}变量。这是我到目前为止的代码:
<section{{ attributes.addClass(classes)}}>
{% if 'general' in name %}
<img class="promo-image" src="http://placehold.it/150x150" alt="promo">
<h3 class="promo-title">Promo title text</h3>
<p class="promo-copy">lorem ipsum dolor set amet</p>
<div class="links">
<a href="/resources" class="btn outline-black-transparent">Learn more</a>
</div>
{% endif %}
</section>
如果我像普通{{name}}一样输出名称变量,它会在页面上打印标签名称,但我无法弄清楚如何将值与任何内容进行比较。我也尝试了一条直线if等于路线,但似乎名字变量是一个数组。
答案 0 :(得分:1)
由于name变量是一个数组,我只需要添加的第一个值:
{%
set tag = name['#items'].0.value
%}
然后将if语句更改为:
{% if tag == 'text' %}
<section{{ attributes.addClass(classes)}}>
<img class="promo-image" src="http://placehold.it/150x150" alt="promo">
<h3 class="promo-title">Promo title text</h3>
<p class="promo-copy">lorem ipsum dolor set amet</p>
<div class="links">
<a href="/resources" class="btn outline-black-transparent">Learn more</a>
</div>
</section>
{% endif %}
现在模板按照我的预期工作。