Shopify使用Liquid脚本对cart.items数组进行排序

Jak*_*Lin 1 liquid-layout liquid shopify

我想在cart.liquid文件中对cart.items数组进行排序.然后我可以按预期的顺序显示表格中的时间.

    {% for item in cart.items sort_by:item.line_price %}
    <div class="row">
      <div class="span12">
      <h1>Your cart</h1>
      <form action="/cart" method="post" id="cartform">
        <table>
        </table>
      </form>
      </div>
    </div>
    {% endfor %}
Run Code Online (Sandbox Code Playgroud)

但是代码不起作用,因为我不能sort_by:item.line_pricefor语句中使用.

如何使用内置功能对数组进行排序?

另一个问题是Shopify液体不支持创建阵列.如果我使用自己的算法对数组进行排序.但是如何将输出保存到新阵列?

非常感谢.

hjb*_*lok 6

Shopify有一个"一系列哈希或掉落" 的排序过滤器.你可以这样使用它:

{% assign cart_items = cart.items | sort: "line_price" %}
{% for item in cart_items %}
- {{item.title}} {{item.line_price}}<br/>
{% endfor %}
Run Code Online (Sandbox Code Playgroud)