プラグインWooCommerceのwoocommerce_cart_shipping_method_full_labelフィルタの使用方法・解説

概要

woocommerce_cart_shipping_method_full_label フィルタは、WooCommerce のショッピングカート内で商品選択時に表示される配送方法のラベルを変更するためのフックです。このフィルタは、特に以下のような機能を実装する際によく使われます。

  1. 配送方法の名称に特定のテキストを追加
  2. プロモーションや割引の情報を配送ラベルに組み込む
  3. 自社サービスの説明を配送方法に追加
  4. 特定の条件に応じて配送ラベルをカスタマイズ
  5. 一定のタイミングでラベルの言語を変更
  6. フロントエンドでのユーザー体験向上のための変更

フィルタの概要

  • 構文:

    add_filter('woocommerce_cart_shipping_method_full_label', 'custom_function_name', 10, 2);
    
  • パラメータ:

    1. $label: 元の配送方法のラベル (文字列)
    2. $method: WC_Shipping_Method オブジェクト
  • 戻り値:
    フィルタを適用した後のカスタマイズされた配送方法ラベル (文字列)

  • 使用可能なバージョン:

    • WooCommerce: 2.0 以上
    • WordPress: 4.0 以上

この関数のアクションでの使用可能性

アクション 使用可能性
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

サンプルコード

サンプルコード 1: 配送方法名に特定のテキストを追加する

add_filter('woocommerce_cart_shipping_method_full_label', 'add_text_to_shipping_label', 10, 2);
function add_text_to_shipping_label($label, $method) {
    return $label . ' (特別割引があります)';
}

このコードは、すべての配送方法のラベルに「(特別割引があります)」というテキストを追加します。

サンプルコード 2: 配送方法名称を変更する

add_filter('woocommerce_cart_shipping_method_full_label', 'change_shipping_method_label', 10, 2);
function change_shipping_method_label($label, $method) {
    if ($method->id === 'flat_rate') {
        return 'フラットレート配送';
    }
    return $label;
}

このコードは、フラットレート配送のラベルを「フラットレート配送」に変更します。

サンプルコード 3: ラベルにプロモーション情報を追加する

add_filter('woocommerce_cart_shipping_method_full_label', 'add_promotion_to_shipping_label', 10, 2);
function add_promotion_to_shipping_label($label, $method) {
    return $label . ' (今週末限定の無料配送!)';
}

このコードは、すべての配送方法のラベルに「(今週末限定の無料配送!)」というプロモーション情報を追加します。

サンプルコード 4: 特定の条件に応じてラベルをカスタマイズ

add_filter('woocommerce_cart_shipping_method_full_label', 'conditional_shipping_label', 10, 2);
function conditional_shipping_label($label, $method) {
    if ( WC()->cart->cart_contents_total > 100 ) {
        return $label . ' (10000円以上の買い物で送料無料)';
    }
    return $label;
}

このコードは、カート内の合計金額が10000円を超えた場合に、配送ラベルに「(10000円以上の買い物で送料無料)」を追加します。

サンプルコード 5: 言語に応じてラベルを変更

add_filter('woocommerce_cart_shipping_method_full_label', 'change_label_based_on_language', 10, 2);
function change_label_based_on_language($label, $method) {
    if (get_locale() === 'ja') {
        return '日本語配送方法';
    }
    return $label;
}

このコードは、WordPress の言語設定が日本語の場合に配送方法を「日本語配送方法」として表示します。

この関数について質問する


上の計算式の答えを入力してください