Shopifyスクリプトを活用した商品バンドルを使用する
ストアで公開しているShopifyスクリプトを活用して、バンドルを販売できます。ストアでバンドルの使用を開始する前に、以下の考慮事項を確認してください。
- 配送スクリプトと決済スクリプトは、バンドルと完全に互換性があります。
- 項目スクリプトは、バンドルではない項目で正常に機能します。ただし、項目スクリプトは読み取り専用のメソッドのバンドル項目にのみ適用されます。項目のメソッドを変更する場合、その変更はバンドル項目には適用されません。
- バンドルコンポーネントはカート内で読み取りできません。
- バンドル項目はカート内で読み取り可能なので、カートメソッドが適用されます。
スクリプトは、項目スクリプトを除き、デフォルトでバンドルに適用されます。ストア内のバンドルにスクリプトを適用したくない場合は、バリエーション、商品、項目などのメソッドを使用して商品を絞り込むようにスクリプトを更新することを検討してください。
ディスカウント
項目スクリプトによって作成されるディスカウントは、バンドルに適用されません。バンドルにディスカウントを適用する場合は、以下のいずれかの操作を行なってください。
- バンドルのクーポンコードを作成する。
- バンドルの価格を手動で変更する。
- [カートの変更] を使用して価格調整を行う。
バンドルとShopifyスクリプトのメソッド
ストアでバンドルの使用を開始する前に、既存のスクリプトのメソッドを確認して、バンドル化された商品に対して思ったとおりに機能するかご確認ください。
カートのメソッド
subtotal_price
、subtotal_price_was
、total_weight
などのカートのメソッドには、その出力にバンドルが含まれます。たとえば、カートにバンドルがある場合、バンドルの小計金額は、subtotal_price
が呼び出されるときに、小計金額の合計に含まれます。
カートのメソッドである.line_items
にはバンドルが含まれるので、.size
や.length
の呼び出しには、カウント中のバンドル化された商品の情報も含まれます。
delete_if
メソッドは、バンドルされていない項目に適用できる項目スクリプト変更メソッドです。ただし、バンドル項目には適用されません。
項目のメソッド
読み取り専用項目のメソッドは、バンドルに含まれる項目で動作します。読み取り専用項目のメソッドの例としては、.original_line_price
、line_price_was
、.line_price_changed?
、.properties_was
、properties_changed?
があります。
項目のメソッドを変更しても、バンドルに含まれる項目にメソッドが適用される場合は、その変更が無視されます。項目のメソッドを変更する例としては、.change_line_price
、.change_properties
、.split
があります。
Shopifyスクリプトについて詳しくはこちらをご覧ください。