【问题标题】:Jekyll _data: Data from .yml files displayed locally but not on githubJekyll _data:来自 .yml 文件的数据在本地显示但不在 github 上
【发布时间】:2014-06-05 22:48:51
【问题描述】:

我使用 Jekyll 的 _data feature 将短文本消息存储在 .yml 文件中。

例如,我有一个名为 messages.yml 的文件,其中有:

hello: 'Hello world!'

在我的 index.html 文件中,我有 <h1>{{ site.data.messages.hello }}</h1>。当我在本地运行 Jekyll 服务器时,我得到了一个不错的输出:<h1>Hello world!</h1> 但是一旦我在 gh-pages 中合并更改并检查该站点的 github 版本,我得到的只是 <h1></h1>

为什么站点上线后,来自 _data 的文本没有呈现?

【问题讨论】:

    标签: github jekyll


    【解决方案1】:

    在我试图简化问题的过程中,我忽略了一个关键的事情(通常会发生)导致问题。

    我有多种语言的消息,并使用存储在页面 frontmatter 中的 lang 变量以正确的语言显示消息。

    例如,在我的模板中,我有这行:
    <p>{{ site.data.messages.[page.lang].hello }}</p>

    如果页面在frontmatter中包含lang: en,则输出为<p>Hello world!</p>;如果它包含lang: es ==> <p>Hola mundo!</p>。效果很好。

    我使用 Jekyll 的 defaults featureenes 目录中的所有文件设置了默认 lang Jekyll 1.5.1 不支持gh-pages currently use。我使用的是最新版本的 Jekyll 2.0.3。

    我必须为每个页面设置 lang 变量来解决这个问题。

    我希望这个答案对某人有所帮助。很抱歉造成混乱。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-12-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-28
      • 2020-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多