如何将frontmatter值传递给for循环

时间:2016-12-04 23:40:50

标签: jekyll

我想在我的frontmatter中使用一个值来指定要循环的数据文件,但我无法使其工作。

我在_data / sidebars / sidebar1.yml中有一个数据文件。它包含:

- first
- second
- third

在页面上,我有这个先例:

---
title: My page
sidebar: site.data.sidebar.sidebar1
---

我想使用此代码:

{% for entry in page.sidebar %}
* {{entry}}
{% endfor %}

然而,这不起作用。我尝试了很多事情(包括assigncapture标记来定义page.sidebar内容,但似乎没有任何效果。

唯一有效的方法是:

{% if page.sidebar == "site.data.sidebars.sidebar1" %}
{% assign sidebar = site.data.sidebars.sidebar1 %}
{% endif %}

{% for entry in sidebar %}
* {{entry}}
{% endfor %}

但是,我想用if语句来避免这些额外的代码,因为很容易忘记这一点,我想自动更多。

关于如何使这项工作的任何想法?

0 个答案:

没有答案