メインコンテンツへスキップ
WooCommerce 開発者向けドキュメント

WooCommerce の公式ドキュメントの日本語訳

英語版ドキュメント | サポート

< All Topics
Print

coupons

クーポン

以下のクーポンフィルターが利用可能です:

  • coupons
  • showApplyCouponNotice
  • showRemoveCouponNotice

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 – 割引税額の合計。
  • extensions object (default: {}) – extensions オブジェクト。
  • args object – 引数オブジェクト:
    • context string (default: summary) – アイテムのコンテキスト。

リターン

  • 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 – クーポンコード。

リターン

  • 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を参照してください。

スクリーンショット

| 前
|:———————————————————————:|:———————————————————————:|
|Show Apply Coupon Notice フィルタ適用前 |Show Apply Coupon Notice フィルタ適用後 ||…

showRemoveCouponNotice

説明

パラメーター

  • value boolean (デフォルト: true) – クーポン削除通知を表示するかどうか。
  • extensions object (default: {}) – 拡張オブジェクト。
  • args object – 以下のキーを持つ引数オブジェクト:
    • context string (指定可能な値: wc/cart および wc/checkout) – クーポン通知のコンテキスト。
    • couponCode string – クーポンコード。

リターン

  • 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を参照してください。

スクリーンショット

| 前
|:———————————————————————:|:———————————————————————:|
|Show Remove Coupon Notice フィルタ適用前 |Show Remove Coupon Notice フィルタ適用後 ||…

Table of Contents