Jekyll:将数据分配给收集?
问题描述:
如何将yml定义的数据链接到我的集合?Jekyll:将数据分配给收集?
我宁愿让我对“项目”的所有数据在.yml文件像这样:
---
- id: project-A
- title : Fancy project A
---
- id: project-B
- title : Fancy project-B
...我有一个集合“项目”。 我可以遍历我YML定义项目:{% for case in site.data.projects | sort: 'order' %}
但有一次,我怎么访问定义数据site.data.projects?无论如何,我可以告诉Jekyll用这些数据来增加收藏?
答
如果我了解你,你可以使用where过滤器。
{% assign related_project = site.data.projects | where: 'id', page.slug %}
然后遍历related_project。使用'page.slug'假定你的slu matches符合你的ID。 Slug也只在Jekyll 3.1中可用,所以如果你使用的是早期版本,你必须构建slug(通过使用'url'并拉出部分路径)。
这是我知道的最有效的方法,但也有其他方法。