概要
woocommerce_cart_shipping_method_full_label
フィルタは、WooCommerce のショッピングカート内で商品選択時に表示される配送方法のラベルを変更するためのフックです。このフィルタは、特に以下のような機能を実装する際によく使われます。
- 配送方法の名称に特定のテキストを追加
- プロモーションや割引の情報を配送ラベルに組み込む
- 自社サービスの説明を配送方法に追加
- 特定の条件に応じて配送ラベルをカスタマイズ
- 一定のタイミングでラベルの言語を変更
- フロントエンドでのユーザー体験向上のための変更
フィルタの概要
-
構文:
add_filter('woocommerce_cart_shipping_method_full_label', 'custom_function_name', 10, 2);
-
パラメータ:
$label
: 元の配送方法のラベル (文字列)$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 の言語設定が日本語の場合に配送方法を「日本語配送方法」として表示します。