まず第一に、私は常に動(dòng)作するサンプルを投稿したいと思っていますが、これは Shopify の js とサーバーサイド レンダリング リキッドの組み合わせであるため、実行中のサンプルを入手することはできません。
Shopify では、この {{ Product }}
のように、商品テンプレートから product
オブジェクトにアクセスできます。
ショッピング カート オブジェクトには、ショッピング カート內(nèi)のすべてのアイテムの配列である items
屬性があります。ショッピング カート內(nèi)の各 item
オブジェクトは、product
オブジェクトとは異なります。 product
オブジェクトにはバリエーションのリストがありますが、cart item
オブジェクトにはありません。
この目的は、ショッピング カート內(nèi)のアイテムのサイズを編集できるようにすることです。
私の質(zhì)問は、リンクされているすべてのバリエーションを取得するにはどうすればよいですか?製品に移動(dòng)して、その製品內(nèi)のすべてのバリエーションのリストを取得し、バリエーションから product_id
を取得する必要があります。
これが難しい理由は、カート オブジェクトの get 応答を取得すると、カート內(nèi)の item
ごとに product_id
を取得するためです。ただし、製品ページにいない限り、製品オブジェクトを取得することはできません。
ショッピング カートを次のように視覚化すると次のようになります:
リーリー完了する必要があるのは次のとおりです:
リーリー製品 ID またはハンドルをお持ちの場(chǎng)合は、いつでも Shopify に電話して、製品に割り當(dāng)てられたすべてのバリエーションやすべてのオプションなど、製品に関する詳細(xì)情報(bào)を取得できます。したがって、別のオプションに変更するには、カートからバリアント ID を削除し、必要な別の ID を追加する必要があります。 StorefrontAPI 呼び出しを使用して製品情報(bào)を取得できます。通常、これが販売者が必要なことを行う方法です。
丸一日格闘した後、ついにそれを理解しました。この問題に遭遇した他の人も、同様のことを行う必要があります。
ショッピング カート テンプレートから、cart.liquid
これで、カート內(nèi)の商品屬性ごとにバリエーションが追加されました。