循环文档属性

时间:2015-09-24 19:28:26

标签: jekyll liquid

在我的markdown标题中,我添加了一个自定义行:

---
layout: docs
title:  "My title"
date:   2015-09-18 22:40:58
permalink: /some/url/
custom: valueA valueB                 <---
---

我设法编写了以下处理这些值的模板:

{% capture custo %}{{page.custom}}{% endcapture %}
{% assign cust = custo|split:&nbsp; %}
{% for cus in cust%}
<code>{{ cus }}</code>
{% endfor %}

然而,这对我来说似乎太复杂了。我试过了

  • 将作业直接移动到for,它编译但只是将所有内容作为一个值输出,而不是作为单独的值输出

    {% for cus in custo|split:&nbsp; %}
    
  • 摆脱capture,但我undefined method 'split' for nil:NilClass正在做

    {% assign cust = page.custom|split:&nbsp; %}
    

我的模板可以简化,还是需要这样?或者甚至是错误的做法?

1 个答案:

答案 0 :(得分:0)

对此进行更多研究,我发现标题不仅是标题,而且实际上是YML。因此我可以做到

---
layout: docs
title:  "My title"
date:   2015-09-18 22:40:58
permalink: /some/url/
custom:
 1: valueA 
 2: valueB
---

然后使用普通循环

{% for cus in page.custom %}
<code>{{ cus[1] }}</code>
{% endfor %}