2016-02-12 45 views
1

如何将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用这些数据来增加收藏?

回答

1

如果我了解你,你可以使用where过滤器。

{% assign related_project = site.data.projects | where: 'id', page.slug %}

然后遍历related_project。使用'page.slug'假定你的slu matches符合你的ID。 Slug也只在Jekyll 3.1中可用,所以如果你使用的是早期版本,你必须构建slug(通过使用'url'并拉出部分路径)。

这是我知道的最有效的方法,但也有其他方法。