科里它不是那么复杂,如果我正确理解你想达到什么。
我会使用订单项属性为用户提供4个下拉选择,以便它可以在购物车中和后端订单中显示选择。确保你阅读了关于Line Item Properties,这样你就可以明白它是如何工作的。但在这里我想代码应该看起来像你的product.liquid页:
<label>Select slot 1</label>
<select id="slot1" name="properties[Slot1]">
<option value="Highlight/Filler Color: Linen" >Highlight/Filler Color: Linen</option>
<option value="Highlight/Filler Color: Sunlit" >Highlight/Filler Color: Sunlit</option>
<option value="Filler Type: Highlight/Filler Color: Wheat" >Filler Type: Highlight/Filler Color: Wheat</option>
<option value="Contour/Filler Color: Walnut" >Contour/Filler Color: Walnut</option>
... *add the rest of your options, total 10
</select>
<label>Select slot 2</label>
<select id="slot2" name="properties[Slot2]">
<option value="Highlight/Filler Color: Linen" >Highlight/Filler Color: Linen</option>
<option value="Highlight/Filler Color: Sunlit" >Highlight/Filler Color: Sunlit</option>
<option value="Filler Type: Highlight/Filler Color: Wheat" >Filler Type: Highlight/Filler Color: Wheat</option>
<option value="Contour/Filler Color: Walnut" >Contour/Filler Color: Walnut</option>
... *add the rest of your options, total 10
</select>
... *add the 2 other dropdown selections
请确保您还添加此代码(它是在订单项属性解释)添加到您cart.liquid页:
{% for p in item.properties %}
{% unless p.last == blank %}
{{ p.first }}:
{% if p.last contains '/uploads/' %}
<a class="lightbox" href="{{ p.last }}">{{ p.last | split: '/' | last }}</a>
{% else %}
{{ p.last }}
{% endif %}
<br />
{% endunless %}
{% endfor %}
订单项属性只有在第四个选项与变体价格无关时才有效。 – Sark 2014-12-06 19:12:45
@mycholan真的。尽管如果大多数选项的价格相同,您仍然可以使用订单项属性。当按下“添加到购物车”按钮时,根据所选选项将正确的变体添加到购物车。请参阅[Shopify论坛上的此主题](https://ecommerce.shopify.com/c/ecommerce-design/t/adding-more-options-and-variants-42404#comment-42410)。在这种情况下,为每个组合创建变体的选项过多,但如果大多数选项的价格相同(例如,只有1或2个更昂贵),则可以为每个可能的价格组合创建变体。 – 2014-12-07 20:24:48