YAML Front Matter可用於直接存儲頁面的其他內容。這是通過創建自定義鍵/值變量來完成的。佈局/模板使用液體標籤來檢查輔助內容是否可用。如果是這樣,它會得到輸出。否則,該部分被跳過。
下面是一個檢查,看看是否被設置稱爲myvar1
自定義變量佈局模板的一個例子:
---
layout: default
---
<header class="sidebar">
<h2>{{ page.title }}</h2>
{% if page.myvar1 %}
<p>Secondary content here: {{ page.myvar1 }}</p>
{% endif %}
</header>
<section class="content">
{{ content }}
</section>
注:爲了配合你的原來的例子,這個佈局文件調用父「默認」佈局。對於這個例子,上面是一個名爲「_layouts/nested_layout.html」的佈局文件。
要使用新的插槽,myvar1
變量被添加到前面的問題,像這樣:
---
layout: nested_layout
title: This is the post test layout
myvar1: More here <strong>including bold text</strong>.
---
And here is the page content: The quick brown fox jumps over the lazy dog.
當處理該頁面中,輔助內容將出現。如果您創建另一個沒有myvar1
的頁面,則該模板的該部分不會顯示任何內容。
您可以根據需要爲您的頁面添加儘可能多的自定義變量。值可以包括HTML,如本例所示。 (它適用於Jekyll 0.11.2。)如果你有很多你想要添加的代碼(而不是一些容易放在一行上的代碼),或者如果你想擁有相同的內容來打開/關閉多個頁面時,可以使用自定義變量作爲標誌。然後,在{%if%}標記中,如果設置了值,則會調用include。