【发布时间】:2018-04-10 13:53:49
【问题描述】:
我有一个部分 .liquid 模板,我希望能够在每次具有不同内容的非主页模板上重复多次。
我能找到的唯一解决方案是使用相同的代码创建多个文件(即 section/file-1.liquid、section/file-2.liquid)。但是,从可维护性的角度来看,这远远不够理想。
基本上,我希望能够在每次调用该部分时使用独特的内容执行以下操作:
<section class="grid-x">
{% for index in (1..2) %}
<div class="cell small-12 medium-large-6">
{% section 'custom-section' %}
</div>
{% endfor %}
</section>
让我的部分文件做这样的事情:
{% assign list = section.blocks %}
<section>
{% if section.settings.title %}
<h2>{{ section.settings.title }}</h2>
{% endif %}
<ul>
{% for item in list %}
{% if item.settings.title %}
<li>
{% if item.settings.icon %}
<span class="icon-area" aria-hidden="true">
<i class="icon icon-{{ item.settings.icon }}"></i>
</span>
<span>{{ item.settings.title }}</span>
{% endif %}
</li>
{% endif %}
{% endfor %}
</ul>
</section>
该部分会在一个页面上出现两次,然后在另一个页面上再次出现,每个页面都有不同的内容。
这可能吗?有没有办法做到这一点?
【问题讨论】: