2016-02-12 55 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'並拉出部分路徑)。

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