2013-07-24 103 views
4

我想在Jekyll網站的頁面上使用液體標籤。我已經在佈局文件中成功地使用了它們,但是當我在頁面中使用它們時,它們不會被Liquid解析。在Jekyll頁面中使用液體標籤,而不是佈局

頁面爲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 }}來包含頁面的內容。這可能是相關的嗎?

+0

「flickr-sets」的來源是什麼?那是你想循環瀏覽的頁面的目錄嗎? –

+0

不是。它是存儲在我的config.yaml文件中的一組Flickr設置ID。 – musoNic80

+0

輸出是什麼?是否將Liquid標籤作爲HTML的一部分進行打印? – agarie

回答

2

因此,似乎答案就是我所懷疑的。我使用一個剛剛稱爲{{ content }}的新佈局文件測試了相同的代碼,並將其正確渲染。我假設這意味着當Jekyll構建時,它將原始內容存儲在頁面對象中。這就是爲什麼只有html(或Markdown)的頁面被正確渲染,但是沒有任何Liquid語法被解析。

雖然這在技術上回答了這個問題,但我仍然沒有想出如何解決我的問題!如果有某種過濾器可以添加到{{ page.content }}以解析Liquid語法,那將會非常有用。

+0

如果它不提供您的問題,請不要將它作爲答案?爲什麼它不回答你的問題?我在這裏沒有明確的問題。 – Polygnome

+0

它確實回答我的問題。它解釋了爲什麼液體語法沒有渲染。 – musoNic80

+0

是的,但你說你還沒有解決你的問題,但是現在你的問題到底是什麼? – Polygnome

1

我知道這可能有點晚,但我挖出了一些名爲{{ page.output }}這是頁面的呈現內容。

0

{{ content }}的作品,它比{{ page.content }}

{{ content }}它的解析所有的液體語法:)

希望幫助是不同的。