If statement 如何检查Jekyll中是否存在类别/标签?

If statement 如何检查Jekyll中是否存在类别/标签?,if-statement,jekyll,liquid,If Statement,Jekyll,Liquid,我正在尝试实现如下示例中的帖子标题: 8/18/2018 | Tags: foo, bar 为了做到这一点,我需要确保标签存在,否则|标签:在未标记的帖子中节浪费空间 在搜索web后,我尝试了以下语句: {% if post.tags != nil %} <b>Tags:</b> {% for tag in tags %} <a href="{{site.baseurl}}/tags/#{{tag|slugize}}">{{

我正在尝试实现如下示例中的帖子标题:

8/18/2018 | Tags: foo, bar
为了做到这一点,我需要确保标签存在,否则
|标签:
在未标记的帖子中节浪费空间

在搜索web后,我尝试了以下语句:

{% if post.tags != nil %}
    <b>Tags:</b>
    {% for tag in tags %}
        <a href="{{site.baseurl}}/tags/#{{tag|slugize}}">{{ tag }}</a>
    {% endfor %}
{% endif %}
{%if post.tags!=nil%}
标签:
{标记%中的标记的%s}
{%endfor%}
{%endif%}
但无论标记是否在前面声明,每个语句都会返回true


如何隐藏标签?

{%if post.tags!=nil%}
始终为
true
,因为
post.tags
是一个
数组

如果此数组为空,
{{post.tags | inspect}}
将输出
[]

要测试此数组是否包含内容,可以使用:

post.tags != empty
此代码实现以下功能:

{% for post in site.posts %}
{% if post.tags != empty %}
  <b>Tags:</b>
  {% for tag in post.tags %}
      <a href="{{site.baseurl}}/tags/#{{tag|slugify}}">{{ tag }}</a>
  {% endfor %}
{% endif %}
{% endfor %}
{%for site.posts%}
{%if post.tags!=空%}
标签:
{post.tags%中标记的%s}
{%endfor%}
{%endif%}
{%endfor%}

如果没有标签,该值是多少?考虑到迭代可能会成功,我猜是一个空列表,而不是零。@jornsharpe猜想我只是太绝望了,无法尝试所有可能的值。最初,我尝试了{%if post.tags%},然后{%post.tags=”“%}我仔细检查了所有内容,但没有运气。所以我最终尝试了零。