概要
woocommerce_checkout_create_order_tax_item
アクションは、WooCommerceのチェックアウトプロセスにおいて、注文の税項目を作成する際にフックされるイベントです。このアクションは税金の設定をカスタマイズしたり、注文の税務関連のデータを拡張したりするために使用されます。
このアクションは以下のような機能を実装する際によく使われます:
1. ユーザーの所在地に基づく税率の調整
2. 特定の商品の税金を変更または適用
3. プロモーションや割引に伴う税金の調整
4. 税金に関連するメタデータの追加
5. 国や地域ごとの異なる税金の計算
6. 税金の表示ラベルや説明のカスタマイズ
構文
add_action('woocommerce_checkout_create_order_tax_item', 'your_function_name', 10, 2);
パラメータ
$item
(object): このパラメータは、現在作成されている税項目のオブジェクトです。$order
(object): このパラメータは、現在の注文のオブジェクトです。
戻り値
このアクションは、特に戻り値を必要とせず、税項目に対する変更を加えるために使用されます。
WooCommerceおよびWordPressのバージョン
- WooCommerceのバージョン: 3.0.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_action('woocommerce_checkout_create_order_tax_item', 'add_custom_tax_item_data', 10, 2);
function add_custom_tax_item_data($item, $order) {
if($item->get_rate_id() === 'custom_tax_rate') {
$item->add_meta_data('custom_data', 'Additional Information', true);
}
}
このサンプルコードは、特定の税率の税項目にカスタムデータを追加するもので、主に税務報告や管理上の理由で使われます。
サンプルコード2
add_action('woocommerce_checkout_create_order_tax_item', 'modify_tax_label', 10, 2);
function modify_tax_label($item, $order) {
$item->set_name('New Tax Label');
}
このコードは、税項目の表示名を変更するもので、顧客にとってより理解しやすい税金のラベルを提供します。
サンプルコード3
add_action('woocommerce_checkout_create_order_tax_item', 'conditional_tax_rate_application', 10, 2);
function conditional_tax_rate_application($item, $order) {
if ($order->get_total() > 100) {
$item->set_rate_id('discount_tax_rate');
}
}
このサンプルでは、注文の合計が特定の値を超えた場合に異なる税率を適用します。
サンプルコード4
add_action('woocommerce_checkout_create_order_tax_item', 'add_tax_item_custom_fee', 10, 2);
function add_tax_item_custom_fee($item, $order) {
$item->add_meta_data('custom_fee', '10', true);
}
このコードは、税項目にカスタム手数料を追加するものです。特定の条件に基づいて追加の費用が必要な場合に便利です。
サンプルコード5
add_action('woocommerce_checkout_create_order_tax_item', 'set_tax_item_priority', 10, 2);
function set_tax_item_priority($item, $order) {
$item->set_meta_data('priority', 'high', true);
}
このサンプルは、税項目に優先度を設定するもので、特定の税項目が処理される際の順序を管理可能にします。