我有一个Jekyll页面,设置如下:
---
navigation:
- FOO: foo
- BAR: bar
- BAZ: baz
---
<h3>
<a name="{{ page.navigation[0][1] }}" class="anchor"
href="#{{ page.navigation[0][1] }}">
</a>{{ page.navigation[0][0] }}
</h3>
<p>Lorem ipsum dolor sit amet,.</p>
...
<h3>
<a name="{{ page.navigation[1][1] }}" class="anchor"
href="#{{ page.navigation[1][1] }}">
</a>{{ page.navigation[1][0] }}
</h3>
<p>Different content ...</p>
...
<h3>
<a name="{{ page.navigation[2][1] }}" class="anchor"
href="#{{ page.navigation[2][1] }}">
</a>{{ page.navigation[2][0] }}
</h3>
<p>Another different content ...</p>
...
在上面的例子中,我试图使用前面的href
链接中每个导航项目的key
和value
。
我不能使用{% for %}
迭代,因为每个段落中都有不同的内容。
我的愿望是让杰基尔输出以下代码:
<h3>
<a name="foo" class="anchor" href="#foo">
</a>FOO
</h3>
<p>Lorem ipsum dolor sit amet,.</p>
...
<h3>
<a name="bar" class="anchor" href="#bar">
</a>BAR
</h3>
<p>Different content ...</p>
...
<h3>
<a name="baz" class="anchor" href="#baz">
</a>BAZ
</h3>
<p>Another different content</p>
...
有什么办法吗?
您可以在导航中的每个项目周围扭曲一个for循环,如下所示:
<h3>
{% for item in page.navigation[0] %}
<a name="{{ item[1] }}" class="anchor"
href="#{{ item[1] }}">
</a>{{ item[0] }}
{% endfor %}
</h3>
<p>Lorem ipsum dolor sit amet,.</p>
<h3>
{% for item in page.navigation[1] %}
<a name="{{ item[1] }}" class="anchor"
href="#{{ item[1] }}">
</a>{{ item[0] }}
{% endfor %}
</h3>
<p>Different content ...</p>
<h3>
{% for item in page.navigation[2] %}
<a name="{{ item[1] }}" class="anchor"
href="#{{ item[1] }}">
</a>{{ item[0] }}
{% endfor %}
</h3>
<p>Another different content</p>