カート内の商品に複数の販売元が含まれる場合に購入制限をかける方法について

AI-generated summary

主題: Shopifyのカート内で複数の販売元(vendor)が混在する場合に購入を制限(購入ボタンを非表示)する方法。

  • 取り組み: Liquidでcart.itemsを走査し、特定のvendor(例: VendorA/VendorB)の存在をフラグ化。両方が含まれる場合に購入ボタンを非表示にするコード例が提示(コード断片が理解の中心)。
  • 課題: 販売元が増えるたびに条件分岐を追加する必要があり、拡張性に欠ける。ベンダー数が増えても対応可能な汎用判定(ユニークなvendorの混在検出)を求めていた。
  • 最新状況: 英語版Shopifyフォーラムで回答を得て解決。具体的な実装・手順は提示リンク先に記載(https://community.shopify.com/post/1352745)。
  • 結果: 問題は解決済み。スレッド内には最終コードは未掲載のため、詳細はリンク先参照。

お世話になります。
さんつと申します。

現在、カート内の商品に複数の販売元が含まれる場合に購入制限をかける方法について調べています。

下記の記事を参考に、同じような手順でコーディングしてみました。

Shopifyで特定の商品の組み合わせ時に購入制限をかける方法【Liquid】
https://takatofree.com/shopify-group-no-buy/

①カート内の商品を取得
②商品の販売元を取得
③特定の商品販売元が混在しているか判定
④購入ボタンを非表示にする

{% for item in cart.items %}
    {% if item.product.vendor == 'VendorA' %}
        {% assign vendorA = true %} 
    {% endif %}
    {% if item.product.vendor == 'VendorB' %}
        {% assign vendorB = true %}
    {% endif %}
{% endfor %}

{% unless vendorA == true and vendorB == true %}
    購入ボタン
{% endunless %}

こちらの方法だと販売元が増える度に、コーディングする必要があります。

販売元が増えても「カート内の商品に複数の販売元が含まれる場合に購入制限をかけることができる方法」があれば教えていただきたいです。
何卒、よろしくお願い致します。

英語版のShopifyフォーラムの方にもご相談させて頂いたのですが、そちらから返答を頂き、無事に問題を解決することができました。
同じような問題に直面した方のために共有させて頂きます。

下記のURLよりご確認ください。
https://community.shopify.com/post/1352745

Shopifyのコミュニティは素晴らしいですね!
ありがとうございました。