尝试从 Front Matter 值中获取 collection
Trying to get a collection from a Front Matter value
大家好,我是 Jekyll 的新手,我已经建立了一个基本的博客。现在我的想法是循环遍历每个博客 post 的 collection 以获得一些有趣的 HTML 。因为据我所知,您不能简单地将 HTML 添加到降价中。
// config.yml
collections:
- hollowknight
所以我建立了一个名为 hollowknight
的 collection 并且我有一个关于空心骑士的博客 post。
在博客的 Front Matter post 我有 collectionid: 'hollowknight'
。在我用于博客 posts 的布局中,我尝试了以下操作:
// post.html
{% capture collection %}site.{{ page.collectionid }}{% endcapture %}
{% for section in collection %}
{{ section.title }}
{% endfor %}
所以我的想法是将 collection
变量设置为 site.hollowknight
,如配置和 Front Matter 中所配置的那样。我在 collection 中设置了一篇文章,但它没有显示。
有什么办法可以实现吗?
编辑:https://talk.jekyllrb.com/t/list-collection-with-name-from-front-matter/3619/6
或者有没有办法在 Front Matter 中使用段落,因为这样我就可以在 post 的 Front Matter 中使用数组和 objects 来施展魔法?
编辑:https://github.com/jekyll/jekyll/issues/246#issuecomment-1639375
或者我只是想远离 Jekyll 应该成为的样子?
编辑
所以我发现我得到 collection 的方式不对,https://talk.jekyllrb.com/t/list-collection-with-name-from-front-matter/3619/6。
{% for section in site.[page.collectionid] %}
{{ section.content | textilize }}
{% endfor %}
唯一奇怪的是,我到处都看到 | textilize
正在使用,但无法让它工作。
这是最终的解决方案:
{% for section in site.[page.collectionid] %}
{{ section.content | markdownify }}
{% endfor %}
它是 markdownify
而不是 textilize
。
此外,我最终使用了一个 Front Matter 数组,其中包含要循环的对象而不是集合,以使其更有条理。
大家好,我是 Jekyll 的新手,我已经建立了一个基本的博客。现在我的想法是循环遍历每个博客 post 的 collection 以获得一些有趣的 HTML 。因为据我所知,您不能简单地将 HTML 添加到降价中。
// config.yml
collections:
- hollowknight
所以我建立了一个名为 hollowknight
的 collection 并且我有一个关于空心骑士的博客 post。
在博客的 Front Matter post 我有 collectionid: 'hollowknight'
。在我用于博客 posts 的布局中,我尝试了以下操作:
// post.html
{% capture collection %}site.{{ page.collectionid }}{% endcapture %}
{% for section in collection %}
{{ section.title }}
{% endfor %}
所以我的想法是将 collection
变量设置为 site.hollowknight
,如配置和 Front Matter 中所配置的那样。我在 collection 中设置了一篇文章,但它没有显示。
有什么办法可以实现吗? 编辑:https://talk.jekyllrb.com/t/list-collection-with-name-from-front-matter/3619/6
或者有没有办法在 Front Matter 中使用段落,因为这样我就可以在 post 的 Front Matter 中使用数组和 objects 来施展魔法?
编辑:https://github.com/jekyll/jekyll/issues/246#issuecomment-1639375
或者我只是想远离 Jekyll 应该成为的样子?
编辑
所以我发现我得到 collection 的方式不对,https://talk.jekyllrb.com/t/list-collection-with-name-from-front-matter/3619/6。
{% for section in site.[page.collectionid] %}
{{ section.content | textilize }}
{% endfor %}
唯一奇怪的是,我到处都看到 | textilize
正在使用,但无法让它工作。
这是最终的解决方案:
{% for section in site.[page.collectionid] %}
{{ section.content | markdownify }}
{% endfor %}
它是 markdownify
而不是 textilize
。
此外,我最终使用了一个 Front Matter 数组,其中包含要循环的对象而不是集合,以使其更有条理。