【问题标题】:Is it possible in gh-pages Jekyll to have {{content}} expand without evaluating liquid tags?gh-pages Jekyll 是否可以在不评估液体标签的情况下扩展 {{content}} ?
【发布时间】:2016-06-24 07:13:54
【问题描述】:

我正在尝试将 GitHub Pages 用于我的项目文档,但它包含生成的 html 文件,结果证明这些文件具有非法的流动标签。除了 _layout 本身,我不需要任何扩展,但据我所知,文章内容本身中的任何 {% ... %} 标签也会被评估,似乎没有办法抑制这一点,除了添加 @987654322 @围绕每篇文章的全部内容。

在呼叫站点有什么方法可以做到这一点吗?类似于{{ content | unrendered }} 的东西会很棒。

注意:这似乎是许多其他人的相反问题,他们在预渲染上下文中使用page.content 并希望它被渲染;我试过page.content,但据我所知,这在我的情况下完全一样,所以没有骰子。

【问题讨论】:

    标签: jekyll liquid github-pages


    【解决方案1】:

    page.content 在 jekyll 2.x 时代是原始的。现在它的渲染内容。

    您可以使用hook plugin 在任何页面上添加page.raw 字段。

    Jekyll::Hooks.register :pages, :pre_render do |document|
      document.data['raw'] = document.content
    end
    

    如果您想对帖子和收藏项执行相同操作,请使用文档挂钩:

    Jekyll::Hooks.register :documents, :pre_render do |document|
    

    注意:

    • :pre_render 钩子document.content 中包含原始内容
    • :post_render 钩子document.content 中包含渲染的内容

    【讨论】:

    • 看起来这样可行,只是 GitHub 页面不支持插件。幸运的是,看起来我实际上没有任何可能与液体标签混淆的内容,所以希望它不会有所作为。
    猜你喜欢
    • 1970-01-01
    • 2021-10-14
    • 2016-05-04
    • 1970-01-01
    • 2016-03-11
    • 2011-10-11
    • 2019-09-28
    • 2012-08-11
    • 2015-03-22
    相关资源
    最近更新 更多