如何在Jekyll文章中循环遍历标签?

11

在我的文章中,我在前置元数据中有三个标签,我正在尝试循环遍历这些标签,但它只是把它们全部拼成一个字符串。

我正在使用以下代码:

<tr>
{% for tag in post.tags %}
<td>{{ post.tag }}</td>
{% endfor %}
</tr>

我希望有一个开箱即用的解决方案,而不是依赖插件,但我自己进行主机托管,如果必要的话,我可以使用它们。

2个回答

11

在您的循环中,您引用了 page.tags 而不是只使用 tag。请使用以下代码:

<tr>
{% for tag in page.tags %}
<td>{{ tag }}</td>
{% endfor %}
</tr>

请在文档中了解更多信息。


好的,我将这个标记为正确,因为它是答案的一部分,让我重新审视语法而不是不同的调用。但是你需要阅读我的答案,以便全面了解情况,并查看是否导致了你自己的问题。谢谢rudolph9! - motleydev

5

好的,我终于想通了。虽然文档没有很好地涵盖这一点,但这非常重要。Jekyll支持同时使用tag: x, y, ztags: x, y, z - s非常重要。这会改变jekyll是否解释多个值或单个值的问题 - 在front matter中也可以发现相同的问题,如category -> categories

我可能错过了它,因为我在使用:

tag:
- x
- y
- z

其实也可以使用该方法,但返回的结果中不会包含字符串字面量"x, y, z",因为这可能是一个暴露出去的线索。总之,感谢rudolph9验证了我的方向,并指正了我的语法。我将选择他的回答作为正确答案(因为我是个好人),但你还需要阅读这篇文章来获得完整的学习体验。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接