【问题标题】:How to get unique variant option2 values in Shopify如何在 Shopify 中获取唯一的变体 option2 值
【发布时间】:2020-10-21 23:54:38
【问题描述】:

我正在尝试在产品页面内创建一个部分,用户可以在其中选择衬衫的颜色(以及尺寸)

我了解到,要获取变体选项的单独值,我应该遍历变体并获取第一个选项的 variant.option1 和第二个选项的 variant.option2。

但是,它会多次渲染每个选项,因为存在组合(例如,小 + 红色、大 + 红色,因此会渲染两次红色)

如何将每种颜色渲染一次?独一无二?

另外,如果有人能给我一个模板,我可以使用它来呈现多个变体,我将不胜感激。 Shopify 几乎无法获得在线帮助。

【问题讨论】:

    标签: shopify


    【解决方案1】:

    使用uniq

    {% assign options = '' %}
    {% for variant in product.variants %}
        {% assign options = options | append: ',' | append: variant.option2 %}
    {% endfor %}
    {% assign options = options | remove_first: ',' | split: ',' | uniq %}
    
    {% for option in options %}
    {{ option }}<br/>
    {% endfor %}
    

    【讨论】:

    • options 正在变成000000ffffff000080,还有另一种方法可以创建一个新数组并循环遍历它吗?抱歉,我是液体新手。
    • 那些看起来像连接的十六进制值,它们是您变体的标题吗?您将需要遍历选项以一次显示一个
    • 我想用它们来渲染有颜色的圆圈,在产品部分,我把#000000、#ffffff、#000080作为颜色选项,然后我将使用它们来渲染圆圈颜色所以用户可以选择他/她想要的颜色。
    • 我通常在选项 2 上循环,这是颜色,但它循环多次,因为还有大小。 (小 + #ffffff,中 + #ffffff,所以它会渲染两次 #ffffff)
    • 看看json 过滤器。您可以使用它将所有变体数据输出为可读格式,以便 JS 完成繁重的工作
    猜你喜欢
    • 1970-01-01
    • 2015-03-20
    • 1970-01-01
    • 2016-07-08
    • 2022-10-19
    • 2019-11-27
    • 2018-03-14
    • 2014-11-26
    • 1970-01-01
    相关资源
    最近更新 更多