条件HTML(取决于yaml前面的事情)

时间:2012-11-28 20:18:53

标签: html yaml jekyll liquid

我是一个自我承认的网络,所以很容易。使用Jekyll我有一个网站,其内容通过液体过滤器泵送,以生成目录。 default.html文件包含类似这样的内容。 。 。

<div id='content'>
    {{ content | toc }}
    {{ content }}
</div>

如何使用yaml front front(类似do_toc: true之类的东西)来使目录只显示在指定的页面上?

1 个答案:

答案 0 :(得分:2)

您可能希望为需要目录和不需要目录的页面定义不同的布局。听起来您使用default.html作为所有内容的模板。相反,请复制default.html其他名称,例如toc.html,然后编辑该文件(erg,这意味着您必须在HTML中进行编辑),以便在您希望的位置提供div块。

然后在需要toc的页面中,在yaml标题中,只需使用

--- 
layout: toc.html
---

而不是

--- 
layout: default.html
---

注意:无需复制default.html。只需添加一个名为toc.html的文件到您的_layouts目录,其中包含以下内容:

---
layout: default.html
---
<div id='content'>
 {{ content | toc }}
 {{ content }}
</div>

然后为您的网页编写yaml标头,如图所示。完全不重复HTML。