删除下拉列表中的特定产品选项
Remove specific product option inside a dropdown
我想知道是否可以删除特定产品选项下拉列表并将其显示在 <p>
标签内或仅显示普通字符串?假设我有 3 个产品选项:
- 颜色
- 尺寸
- 类型
我们都知道所有这些选项都将显示在下拉菜单中。比如我想将 Size
选项显示为普通字符串或文本呢?我们该怎么做?
为了更清楚,这里有一张图片。
product.liquid
<select name="id" id="ProductSelect" class="product-single__variants">
{% for variant in product.variants %}
{% if variant.available %}
<option {% if variant == product.selected_or_first_available_variant %} selected="selected" {% endif %} data-sku="{{ variant.sku }}" value="{{ variant.id }}">{{ variant.title }} - {{ variant.price | money_with_currency }} </option>
{% else %}
<option disabled="disabled">
{{ variant.title }} - {{ 'products.product.sold_out' | t }}
</option>
{% endif %}
{% endfor %}
</select>
您必须修改 product.liquid 模板,而不是那个下拉列表,您必须将其创建为 LI 或文本,您已为其设置。
我刚刚找到了这个问题的答案。我会 post 在这里帮助其他人遇到和我一样的问题。
在product.liquid中:
<!-- product options -->
{% capture option_titles %}Size,Flavor{% endcapture %}
{% assign option_titles = option_titles | split:',' %}
{% for option in product.options %}
{% if option_titles contains option %}
{% capture option_index %}option{{ forloop.index }}{% endcapture %}
{% assign option_values = product.variants | map: option_index | uniq %}
{% if option == 'Flavor' and option_values.size > 1 %}
<label for="option">{{ option }}</label>
{{ option_values | join:', ' }}
{% elsif option_values.size == 1 %}
<label for="option">{{ option }}</label>
{{ option_values }}
{% endif %}
{% endif %}
{% endfor %}
<!-- end product options --->
我想知道是否可以删除特定产品选项下拉列表并将其显示在 <p>
标签内或仅显示普通字符串?假设我有 3 个产品选项:
- 颜色
- 尺寸
- 类型
我们都知道所有这些选项都将显示在下拉菜单中。比如我想将 Size
选项显示为普通字符串或文本呢?我们该怎么做?
为了更清楚,这里有一张图片。
product.liquid
<select name="id" id="ProductSelect" class="product-single__variants">
{% for variant in product.variants %}
{% if variant.available %}
<option {% if variant == product.selected_or_first_available_variant %} selected="selected" {% endif %} data-sku="{{ variant.sku }}" value="{{ variant.id }}">{{ variant.title }} - {{ variant.price | money_with_currency }} </option>
{% else %}
<option disabled="disabled">
{{ variant.title }} - {{ 'products.product.sold_out' | t }}
</option>
{% endif %}
{% endfor %}
</select>
您必须修改 product.liquid 模板,而不是那个下拉列表,您必须将其创建为 LI 或文本,您已为其设置。
我刚刚找到了这个问题的答案。我会 post 在这里帮助其他人遇到和我一样的问题。
在product.liquid中:
<!-- product options -->
{% capture option_titles %}Size,Flavor{% endcapture %}
{% assign option_titles = option_titles | split:',' %}
{% for option in product.options %}
{% if option_titles contains option %}
{% capture option_index %}option{{ forloop.index }}{% endcapture %}
{% assign option_values = product.variants | map: option_index | uniq %}
{% if option == 'Flavor' and option_values.size > 1 %}
<label for="option">{{ option }}</label>
{{ option_values | join:', ' }}
{% elsif option_values.size == 1 %}
<label for="option">{{ option }}</label>
{{ option_values }}
{% endif %}
{% endif %}
{% endfor %}
<!-- end product options --->