如何使用Shopify Liquid的“排序”过滤器按产品可用性或数量进行排序?

时间:2016-06-18 14:18:01

标签: sorting pagination shopify liquid

我如何使用Shopify的Liquid's

{{ assign sorted_array = some_array | sort: 'some_property_of_array_items' }}

过滤以按variants.inventory_quantity排序,以便将已售罄/缺货的商品推送到分页收藏的底部/后页?

我尝试过什么

我试过了:

{% assign collection_products = collection.products | sort: 'variants[0].inventory_quantity' %}

以及:

{% assign collection_products = collection.products | sort: 'variants.first.inventory_quantity' %}

aaaand:

`{% assign collection_products = collection.products | sort: variants.first.inventory_quantity %}`

以及许多其他变体,但最好的结果通常是:

Liquid error: comparison of ProductDrop with ProductDrop failed

我原本试图将所有售罄的产品推到底部(以一种漂亮,干净的方式)试试这个:

`{% assign collection_products = collection.products | sort: 'available' %}`

但这会导致相同的错误,但这次我强烈怀疑它是因为液体不能与布尔值truefalse进行比较。

我是否为语法做错了,还是有其他方法将所有产品推送到分页集合的后页?

1 个答案:

答案 0 :(得分:1)

我无法用纯液体做到这一点。 一种方法是创建一个应用程序(私有很好 - 你可以从本地机器运行它)并对集合进行排序。你可以将它放在服务器上并在夜间排序。然后,本地类型的集合将首先拥有最多库存的产品。