我正在浏览我的首页产品集并生成一个表格。在最后一行中,我需要在第一个表格单元格中放置一些静态内容。我已经能够做到这一点,但由于某种原因,循环在它之后停止。有谁知道为什么?
{% tablerow product in collections.frontpage.products cols: 2 %}
{% if tablerowloop.col_first and tablerowloop.last %}
<img src="{{'box.png' | asset_url}}">
{% else %}
<div class='featured-product'>
<img src="{{ product.images[1] | product_img_url: 'medium' }}">
<p>{{ product.title }}</p>
</div>
{% endif %}
{% endtablerow %}
答案 0 :(得分:2)
tablerowloop.last
仅对表的最后一个单元格(即集合的最后一个产品)返回true,而不是最后一行。相反,您需要检查集合末尾的cols
内的索引,如果它是第一列,它必须是最后一行。
{% tablerow product in collections.frontpage.products cols: 2 %}
{% assign x = tablerowloop.length | minus:2 %}
{% if tablerowloop.col_first and tablerowloop.index > x %}
<img src="{{'box.png' | asset_url}}">
{% else %}
<div class='featured-product'>
<img src="{{ product.images[1] | product_img_url: 'medium' }}">
<p>{{ product.title }}</p>
</div>
{% endif %}
{% endtablerow %}