概要
フィルタ woocommerce_order_shipping_to_display_tax_label
は、WooCommerce の注文において、配送の税ラベルを表示する際にカスタマイズするためのフックです。このフィルタを使用することで、デフォルトの税ラベルを変更したり、特定の条件に基づいて異なるラベルを表示したりすることができます。これにより、顧客にとってより分かりやすい表示や、ビジネスのニーズに応じたカスタマイズが実現可能です。
このフィルタは以下のような機能を実装する際によく使われます:
1. 税ラベルの言語を変更する。
2. 特定の製品カテゴリに応じて異なる税ラベルを表示する。
3. 購入時のプロモーションや割引によって税ラベルを変更する。
4. 非課税取引を行う際の特別なラベルを表示する。
5. 複数の税率が適用される場合に、適切なラベルを選択する。
6. 顧客の所在地に基づいて税ラベルを動的に変更する。
構文
add_filter('woocommerce_order_shipping_to_display_tax_label', 'custom_tax_label', 10, 2);
パラメータ
$label
(string): 表示する税ラベルの文字列。$order
(WC_Order): 現在の注文オブジェクト。
戻り値
- 変更された税ラベルの文字列。
使用可能なバージョン
- WooCommerce: 3.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: 税ラベルをカスタマイズする
function custom_tax_label($label, $order) {
return 'カスタム税ラベル';
}
add_filter('woocommerce_order_shipping_to_display_tax_label', 'custom_tax_label', 10, 2);
このコードは、すべての注文に対して表示される税ラベルを「カスタム税ラベル」に変更します。
サンプルコード2: 特定の製品カテゴリに基づく税ラベル
function custom_tax_label_by_category($label, $order) {
$items = $order->get_items();
foreach ($items as $item) {
if (has_term('特定のカテゴリ', 'product_cat', $item->get_product_id())) {
return '特別な税ラベル';
}
}
return $label;
}
add_filter('woocommerce_order_shipping_to_display_tax_label', 'custom_tax_label_by_category', 10, 2);
このコードは、特定のカテゴリに属する商品が含まれている場合に特別な税ラベルを表示します。
サンプルコード3: 地域に基づいた税ラベル
function tax_label_based_on_region($label, $order) {
$shipping_country = $order->get_shipping_country();
if ($shipping_country == 'JP') {
return '日本国内税';
}
return $label;
}
add_filter('woocommerce_order_shipping_to_display_tax_label', 'tax_label_based_on_region', 10, 2);
このコードは、注文の配送先が日本の場合に特定の税ラベルを表示します。
サンプルコード4: 無料配送時の税ラベル変更
function free_shipping_tax_label($label, $order) {
if ($order->get_shipping_total() == 0) {
return '無料配送';
}
return $label;
}
add_filter('woocommerce_order_shipping_to_display_tax_label', 'free_shipping_tax_label', 10, 2);
このコードは、配送送料が無料の注文に対して「無料配送」という税ラベルを表示します。
サンプルコード5: 割引時の税ラベル変更
function discount_tax_label($label, $order) {
if ($order->get_discount_total() > 0) {
return '割引後税';
}
return $label;
}
add_filter('woocommerce_order_shipping_to_display_tax_label', 'discount_tax_label', 10, 2);
このコードは、割引が適用された注文に対して「割引後税」というラベルを表示します。
これらのサンプルコードは、WooCommerce での税ラベルのカスタマイズにおいて便利です。各サンプルは独立して機能し、特定のビジネスニーズに合わせて調整できます。