2014-06-05 28 views
0

本地,但不顯示.yml文件中的數據我用傑基爾的_data feature存儲.yml文件中簡短的文本信息。傑基爾_data:從GitHub上

例如,我有一個名爲messages.yml文件,裏面我有:

​​

在我的index.html文件我有<h1>{{ site.data.messages.hello }}</h1>。當我在本地運行傑奇服務器我得到一個不錯的輸出:<h1>Hello world!</h1>但一旦我裏面合併GH 的頁面變化和檢查網站GitHub的版本,我得到的是<h1></h1>

爲什麼_data的文本在網站生效後沒有呈現?

回答

0

在我試圖簡化我都忽略了一個重要的事情,這個問題(因爲它通常發生)是造成問題。

我有多種語言的消息,並使用lang變量存儲在頁面frontmatter中,以正確的語言顯示消息。

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

如果頁面包含在frontmatter lang: en,輸出將是<p>Hello world!</p>;如果它包含lang: es ==><p>Hola mundo!</p>。這是完美的。

我已經用設置默認值內所有文件連接ES目錄哲基爾的defaults feature未在傑基爾1.5.1支持了gh-pages currently use。我正在使用最新版本的Jekyll 2.0.3。

我不得不爲每個頁面設置lang變量來解決這個問題。

我希望這個答案能幫助別人。對困惑感到抱歉。