如何将变量从页面传递到 Liquid 中的布局?

How to pass variables from a page to a layout in Liquid?

假设我有 3 个类别,分别称为 FoodFruitMilk,每个类别都包含特定的帖子。

导航栏显示 3 link 到 3 个页面,根据类别类型列出所有帖子。例如,如果我单击 link Food,它会将我重定向到仅显示类别 Food.

文章的页面

我正在考虑创建一个名为 category.html 的布局,它在 FoodFruitMilk 之间共享。唯一的区别是我要删除的帖子类型。

有什么方法可以在调用布局时从页面传递信息吗?

例如,在 Food 类别的页面中,我将调用 category.html 布局,但也会传递一个变量(例如 type = 'Food'),在布局中我将设置条件检查以仅提取与变量 type.

匹配的帖子

谁能给我一些建议?

在页面的 YAML frontmatter 中声明您的变量,如下所示:

---
type: Food
---

然后您将能够通过页面属性在您的布局中访问它:

{{ page.type }}