循环收集产品并找到最低价格(不包括$ 0价格)

时间:2018-03-29 01:36:09

标签: arrays shopify liquid

我有一个包含多个类别的Shopify网站。有些产品没有价格(Shopify将此作为$ 0感兴趣)。所有集合都显示在首页上。我想遍历每个集合中的所有产品并输出最低价格(不包括$ 0值)。

我正在使用的当前数组是:

{% assign startingFrom = collection.products | sort: 'price' %}
{{ startingFrom[0].price_min | money_without_currency }}

不幸的是,这会捕获并输出$ 0值。

循环高于$ 0的值并输出最低价格的最佳方法是什么?

我试图排除零值:

{% assign startingFrom = collection.products | sort: 'price' %}
{% if 'price' != 0.00 %}
 {{ startingFrom[0].price_min | money_without_currency }}
{% endif %}

输出$ 0.00。

2 个答案:

答案 0 :(得分:0)

{% for product in collection.products %}
  {% if forloop.first %}
    {% assign lowest_price = product.price %}
  {% endif %}
  {% assign new_price = product.price %}
  {% if new_price < lowest_price and new_price != 0 %}
    {% assign lowest_price = new_price %}
  {% endif %}
{% endfor %}

它没有经过测试,但应该可以使用。

答案 1 :(得分:0)

除非您的收藏品中的产品的页数限制少于此数量,否则您无法依赖此方式。

请参阅SPA with vanilla js

下的讨论和解决方案