首页 > 解决方案 > 如何仅显示 Shopify 产品系列排序选项的某些筛选选项,而不是显示所有选项?

问题描述

我希望我的收藏排序选项仅显示以下内容:畅销、价格(从低到高)、价格(从高到低)、按字母顺序 (AZ)、按字母顺序 (ZA)

当我添加以下代码时,它仅成功显示允许用户按价格对产品进行排序的值(从高到低/从低到高)

{% for option in collection.sort_options %}
  {% if option.value contains 'price-' %}
    <option value="?sort_by={{ option.value }}" {% if option.value == selected %}selected{% endif %}>
      {{ option.name }}
    </option>
  {% endif %}
{% endfor %}

集合排序选项的 for 循环导致:

<select name="sort_by">
  <option value="manual">Featured</option>
  <option value="best-selling">Best selling</option>
  <option value="title-ascending">Alphabetically, A-Z</option>
  <option value="title-descending">Alphabetically, Z-A</option>
  <option value="price-ascending">Price, low to high</option>
  <option value="price-descending">Price, high to low</option>
  <option value="created-ascending">Date, old to new</option>
  <option value="created-descending">Date, new to old</option>
</select>

但是,我还想添加包含besttitle但是当我替换时的值

{% if option.value contains 'price-' %}

{% if option.value contains 'price-' or 'best-' %}

它最终只显示所有值,而不仅仅是包含价格或最佳值的值。我该如何解决?

标签: shopifyliquid

解决方案


您需要在运算符之后重复整个条件语句or

{% if option.value contains 'price-' or option.value contains 'best-' %}
  ...
{% endif %}

推荐阅读