在Jekyll页面中使用Liquid标签,而不是布局

mus*_*c80 5 liquid jekyll

我想在Jekyll网站的页面中使用液体标签.我已经在布局文件中成功使用了它们,但是当我在页面中使用它们时,它们不会被Liquid解析.

该页面采用html格式而非Markdown.该页面具有布局文件成功使用的有效YAML前端内容.这是未解析的页面的代码:

---
layout: default
title: Media
id: media
order: 2
---
<section id="photos">
<h2>Photographs</h2>
<div id="galleries">
    {% for set in site.flickr-sets %}
    <div class="gallery" data-set="{{ set }}"></div>
    {% endfor %}
</div>
</section>
Run Code Online (Sandbox Code Playgroud)

有什么明显的原因导致这种情况无效吗?我真的需要能够访问网站全局变量...

编辑

看来这个问题并不局限于那个页面.我尝试创建一个新页面并使用一些液体语法并得到相同的结果.它也是任何液体语法,而不仅仅是标签.

在这些页面使用的布局文件中,我使用{{ page.content }}而不仅仅是包含页面内容{{ content }}.这可能是相关的吗?

mus*_*c80 3

所以看来答案正如我所猜测的那样。我使用刚刚调用的新布局文件测试了相同的代码,{{ content }}并且它正确呈现。我假设这意味着 Jekyll 构建时会将原始内容存储在页面对象中。这就是为什么只有 html(或 Markdown)的页面可以正确呈现,但任何 Liquid 语法都没有被解析。

虽然这在技术上回答了问题,但我仍然不知道如何解决我的问题!如果我可以添加某种过滤器{{ page.content }}以使其解析 Liquid 语法,那将会很有用。