对于理解带有两个变量的特定条件语句,如何显示“不存在帖子”消息,我遇到了麻烦。
在这个示例中,假设我有一个“动物”的集合-在特定页面上,我想要一个显示“草食动物灵长类”的部分:
{% for animal in site.animal %}
{% if animal.species == "primate" and animal.type == "herbivore" %}
{{ animal.content }}
{% endif %}
{% endfor %}
我想做的是这样的(伪代码):
{% if POSTS_EXIST_FOR_THIS_COMBO: (animal.species == "primate" and animal.type == "herbivore") %}
{% for animal in site.animal %}
{% if animal.species == "primate" and animal.type == "herbivore" %}
{{ animal.content }}
{% endif %}
{% endfor %}
{% else %}
There are no posts for this category.
{% endif %}
注意:这与诸如this之类的示例不同,因为我有两个要检查的参数。有人可以提供有关语法的建议吗?
答案 0 :(得分:2)
我认为您可以执行以下操作,首先从species=primate
中按site.animal
进行过滤,然后从该池中按type=herbivore
进行过滤,然后检查结果是否存在。
{% assign animals = site.animal | where:"species","primate" | where:"type","herbivore" %}
{% if animals %}
{% for animal in animals %}
{{ animal.content }}
{% endfor %}
{% endif %}
希望这会有所帮助。