在Jekyll中,我可以传递对前面的站点数据集的引用吗

在Jekyll中,我可以传递对前面的站点数据集的引用吗,jekyll,liquid,Jekyll,Liquid,我有一个布局用于我的Jekyll网站上不同部分的主页。在每个页面上,我都希望有指向该部分中每个项目的链接,其详细信息存储在站点\u data目录中的YAML文件中。我的目标是将站点数据变量的名称放在页面首页部分,并将其传递到布局中进行渲染。例如: 首页内容 --- sectionItems: site.data.sectionItems.awesomeSectionItems --- …这将传递到节主布局 分区主布局 {% for item in page.sectionItems %}

我有一个布局用于我的Jekyll网站上不同部分的主页。在每个页面上,我都希望有指向该部分中每个项目的链接,其详细信息存储在站点
\u data
目录中的YAML文件中。我的目标是将站点数据变量的名称放在页面首页部分,并将其传递到布局中进行渲染。例如:

首页内容

---
sectionItems: site.data.sectionItems.awesomeSectionItems
---
…这将传递到节主布局

分区主布局

{% for item in page.sectionItems %}
    // Work with section item...
{% endfor %}

不幸的是,当我运行该站点时,什么都没有出现。我该怎么做呢?我也尝试了包含,但这也不起作用。我希望避免将for循环添加到每个页面,另外我希望链接显示在主内容部分下方。

您不能在前面使用变量。您必须使用一个内容变量,如
{%assign sectionItems=site.data.sectionItems.awesomeSectionItems%}
,然后使用
{%for sectionItems%}

循环,但是如果我想做一个布局,只为它的某些部分提供数据(没有硬编码数据,它将成为一个页面),该怎么办抱歉@kinqe评论格式不适合回答。你最好重新表述你的问题。这只适用于模板级别,每个页面上的sectionItems都是相同的。