coupons
クーポン
以下のクーポンフィルターが利用可能です:
couponsshowApplyCouponNoticeshowRemoveCouponNotice
coupons
説明
現在の機能では、クーポンコードはカートとチェックアウトのサイドバーに表示されます。これは、ユーザーフレンドリーでないクーポンコードを動的に生成する場合、望ましくない可能性があります。したがって、このコードの表示方法を変更することが望ましいかもしれません。これを実現するために、couponsフィルタが存在します。このフィルタはクーポンの表示/非表示にも使用できます。このフィルタは、クーポンの値/合計を変更するために使用してはいけません。これはカートの合計には反映されません。
パラメーター
- coupons
object– 以下のキーを持つクーポン・オブジェクト:- code
string– クーポンコード。 - discount_type
string– 割引の種類。percentまたはfixed_cartです。 - totals
object– 以下のキーを持つ合計オブジェクト:- currency_code
string– 通貨コード。 - currency_decimal_separator
string– 通貨の小数点セパレータ。 - currency_minor_unit
number– 通貨の小単位。 - currency_prefix
string– 通貨のプレフィックス。 - currency_suffix
string– 通貨のサフィックス。 - currency_symbol
string– 通貨記号。 - currency_thousand_separator
string– 通貨の千の区切り文字。 - total_discount
string– 割引総額。 - total_discount_tax
string– 割引税額の合計。
- currency_code
- code
- extensions
object(default:{}) – extensions オブジェクト。 - args
object– 引数オブジェクト:- context
string(default:summary) – アイテムのコンテキスト。
- context
リターン
array– 上記と同じキーを持つオブジェクトのクーポン配列。
コード例
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyCoupons = ( coupons, extensions, args ) => {
return coupons.map( ( coupon ) => {
if ( ! coupon.label.match( /autocoupon(?:_\d+)+/ ) ) {
return coupon;
}
return {
...coupon,
label: 'Automatic coupon',
};
} );
};
registerCheckoutFilters( 'example-extension', {
coupons: modifyCoupons,
} );
フィルターは組み合わせることもできます。例としてCombined filtersを参照してください。
スクリーンショット
| [ | 前 |
|---|---|
| クーポン・フィルター適用前](https://github.com/woocommerce/woocommerce-blocks/assets/3323310/6cab1aff-e4b9-4909-b81c-5726c6a20c40) |
showApplyCouponNotice
説明
パラメーター
- value
boolean(デフォルト:true) – クーポン適用通知を表示するかどうか。 - extensions
object(default:{}) – 拡張オブジェクト。 - args
object– 以下のキーを持つ引数オブジェクト:- context
string(指定可能な値:wc/cartおよびwc/checkout) – クーポン通知のコンテキスト。 - couponCode
string– クーポンコード。
- context
リターン
boolean– クーポン適用通知を表示するかどうか。
コード例
基本例
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowApplyCouponNotice = ( defaultValue, extensions, args ) => {
return false;
};
registerCheckoutFilters( 'example-extension', {
showApplyCouponNotice: modifyShowApplyCouponNotice,
} );
高度な例
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowApplyCouponNotice = ( defaultValue, extensions, args ) => {
if ( args?.couponCode === '10off' ) {
return false;
}
return defaultValue;
};
registerCheckoutFilters( 'example-extension', {
showApplyCouponNotice: modifyShowApplyCouponNotice,
} );
フィルターは組み合わせることもできます。例としてCombined filtersを参照してください。
スクリーンショット
| 前
|:———————————————————————:|:———————————————————————:|
| |
||…
showRemoveCouponNotice
説明
パラメーター
- value
boolean(デフォルト:true) – クーポン削除通知を表示するかどうか。 - extensions
object(default:{}) – 拡張オブジェクト。 - args
object– 以下のキーを持つ引数オブジェクト:- context
string(指定可能な値:wc/cartおよびwc/checkout) – クーポン通知のコンテキスト。 - couponCode
string– クーポンコード。
- context
リターン
boolean– クーポン削除の通知を表示するかどうか。
コード例
基本例
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowRemoveCouponNotice = ( defaultValue, extensions, args ) => {
return false;
};
registerCheckoutFilters( 'example-extension', {
showRemoveCouponNotice: modifyShowRemoveCouponNotice,
} );
高度な例
const { registerCheckoutFilters } = window.wc.blocksCheckout;
const modifyShowRemoveCouponNotice = ( defaultValue, extensions, args ) => {
if ( args?.couponCode === '10off' ) {
return false;
}
return defaultValue;
};
registerCheckoutFilters( 'example-extension', {
showRemoveCouponNotice: modifyShowRemoveCouponNotice,
} );
フィルターは組み合わせることもできます。例としてCombined filtersを参照してください。
スクリーンショット
| 前
|:———————————————————————:|:———————————————————————:|
| |
||…
