在我的文章中,我在前置元数据中有三个标签,我正在尝试循环遍历这些标签,但它只是把它们全部拼成一个字符串。
我正在使用以下代码:
<tr>
{% for tag in post.tags %}
<td>{{ post.tag }}</td>
{% endfor %}
</tr>
我希望有一个开箱即用的解决方案,而不是依赖插件,但我自己进行主机托管,如果必要的话,我可以使用它们。
在我的文章中,我在前置元数据中有三个标签,我正在尝试循环遍历这些标签,但它只是把它们全部拼成一个字符串。
我正在使用以下代码:
<tr>
{% for tag in post.tags %}
<td>{{ post.tag }}</td>
{% endfor %}
</tr>
我希望有一个开箱即用的解决方案,而不是依赖插件,但我自己进行主机托管,如果必要的话,我可以使用它们。
在您的循环中,您引用了 page.tags
而不是只使用 tag
。请使用以下代码:
<tr>
{% for tag in page.tags %}
<td>{{ tag }}</td>
{% endfor %}
</tr>
请在文档中了解更多信息。
好的,我终于想通了。虽然文档没有很好地涵盖这一点,但这非常重要。Jekyll支持同时使用tag: x, y, z
和tags: x, y, z
- s非常重要。这会改变jekyll是否解释多个值或单个值的问题 - 在front matter中也可以发现相同的问题,如category -> categories
。
我可能错过了它,因为我在使用:
tag:
- x
- y
- z
其实也可以使用该方法,但返回的结果中不会包含字符串字面量"x, y, z",因为这可能是一个暴露出去的线索。总之,感谢rudolph9验证了我的方向,并指正了我的语法。我将选择他的回答作为正确答案(因为我是个好人),但你还需要阅读这篇文章来获得完整的学习体验。