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=”“%}我仔细检查了所有内容,但没有运气。所以我最终尝试了零。