Jekyll 如何检查列表中是否存在值?

Jekyll 如何检查列表中是否存在值?,jekyll,liquid,Jekyll,Liquid,我想得到一个帖子列表,在他们的首页有一个特定的标签(*) 我尝试了下面的代码,它迭代当前帖子页面的所有标记(当前标记为t),然后迭代所有帖子(p),检查它们是否有此标记(出于调试原因,只输出标题): 行{%if t in p.tags%}似乎失败了(我来自Python背景,所以我尝试了一下),并且在液体中找不到中的操作符。有出口吗 (*)我提到了我想要实现的目标,以防有更直接的方法实现,但我仍然对一般性问题感兴趣。根据您的示例,可以使用标签实现: contains还可以检查数组中是否存在字符串

我想得到一个帖子列表,在他们的首页有一个特定的标签(*)

我尝试了下面的代码,它迭代当前帖子页面的所有标记(当前标记为
t
),然后迭代所有帖子(
p
),检查它们是否有此标记(出于调试原因,只输出标题):

{%if t in p.tags%}
似乎失败了(我来自Python背景,所以我尝试了一下),并且在液体中找不到
中的
操作符。有出口吗


(*)我提到了我想要实现的目标,以防有更直接的方法实现,但我仍然对一般性问题感兴趣。

根据您的示例,可以使用标签实现:

contains还可以检查数组中是否存在字符串 字符串

{% if product.tags contains "outdoor" %}   
This product is great for
using outdoors! 
{% endif %}
因此,要获得前面有特定标记的帖子列表(在本例中,是带有标记的帖子<代码>mytag
):

{%assign posts_与_mytag=site.posts|其中_exp:“item”,
“item.tags包含'mytag'”%}
{对于带有\u mytag%}
{%endfor%}

继@maracuny的回答之后,我的完整性问题中的更正代码:

{% for t in page.tags %}
    {% for p in site.posts %}
        {% if p.tags contains t %}
            {{ p.title }}
        {% endif %}
    {% endfor %}
{% endfor %}
{% assign posts_with_mytag =  site.posts | where_exp:"item",
"item.tags contains 'mytag'" %}

{% for post in posts_with_mytag %}
<a href="{{post.url}}">{{post.title}}</a>
{% endfor %}
{% for t in page.tags %}
    {% for p in site.posts %}
        {% if p.tags contains t %}
            {{ p.title }}
        {% endif %}
    {% endfor %}
{% endfor %}