仅在有标签时渲染标签标签
Render tag label only if there are tags
我只想在 post 有实际标签的情况下呈现“标签:”标签。当我写
{{post.tags | size}}
我得到标签的数量。但是,如果我把它放在 {% if %}
条件下:
{% if post.tags | size != '0' %}
它总是产生 true。我用
解决了这个问题
{% capture tagsize %}{{post.tags | size}}{% endcapture %}
{% if tagsize != '0' %}
但是看起来很丑。有更好的方法吗?
注意:我使用 GitHub 页面,所以使用插件——除了矫枉过正——不是一种选择。我的 Jekyll 版本是2.0.4
,截至日期here。
默认 {{ post.tags }} == empty array
。
由于我们不能做到{% if post.tags != [] %}
,所以我们只在_config.yml
中添加array: []
。
我们现在可以做:
{% if post.tags != site.array %}
Do something
{% endif %}
标签大小 returns 一个整数而不是一个字符串,所以你应该比较 0 而不是 '0'
{% if page.tags.size != 0 %}
<!-- some code to render tags -->
{% endif %}
我只想在 post 有实际标签的情况下呈现“标签:”标签。当我写
{{post.tags | size}}
我得到标签的数量。但是,如果我把它放在 {% if %}
条件下:
{% if post.tags | size != '0' %}
它总是产生 true。我用
解决了这个问题{% capture tagsize %}{{post.tags | size}}{% endcapture %}
{% if tagsize != '0' %}
但是看起来很丑。有更好的方法吗?
注意:我使用 GitHub 页面,所以使用插件——除了矫枉过正——不是一种选择。我的 Jekyll 版本是2.0.4
,截至日期here。
默认 {{ post.tags }} == empty array
。
由于我们不能做到{% if post.tags != [] %}
,所以我们只在_config.yml
中添加array: []
。
我们现在可以做:
{% if post.tags != site.array %}
Do something
{% endif %}
标签大小 returns 一个整数而不是一个字符串,所以你应该比较 0 而不是 '0'
{% if page.tags.size != 0 %}
<!-- some code to render tags -->
{% endif %}