首页 文章

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

提问于
浏览
5

我想在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>

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

编辑

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

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

3 回答

  • 3

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

    虽然这在技术上回答了这个问题,但我仍然没有想出如何解决我的问题!如果有一些过滤器我可以添加到 {{ page.content }} 以使其解析Liquid语法,这将是有用的 .

  • 2

    我知道这可能有点晚了,但我挖出了一个名为 {{ page.output }} 的东西,它是页面的渲染内容 .

  • 2

    {{ content }} 工作,它与 {{ page.content }} 不同

    {{ content }} 它正在解析所有液体语法:)

    希望有所帮助 .

相关问题