概要
woocommerce_price_ex_tax_amount
フィルタは、WooCommerceにおける商品の価格表示をカスタマイズするために使用されます。このフィルタを利用することで、商品価格から税金を除いた金額を調整することができます。具体的には以下のような機能を実装する際に役立ちます。
- 商品詳細ページでの価格表示のカスタマイズ
- カート画面での税抜き価格の表示変更
- 顧客向けのカスタム割引価格の提示
- 特定のユーザーグループに向けた価格設定
- サイト上の全体的な価格表示の一貫性を確保
- レポートや分析のために価格情報を整形
構文
add_filter( 'woocommerce_price_ex_tax_amount', 'custom_function_name', 10, 2 );
パラメータ
float $price
:元の税抜き価格WC_Product $product
:対象商品オブジェクト
戻り値
float
:変更された税抜き価格
使用可能な WooCommerce のバージョン
- WooCommerce 3.0以降
使用可能な WordPress のバージョン
- 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_price_ex_tax_amount', 'custom_price_ex_tax_function_1', 10, 2 );
function custom_price_ex_tax_function_1( $price, $product ) {
return $price * 1.1; // 10%の増加
}
このコードは、商品の税抜き価格を10%増加させて表示します。
サンプルコード2
add_filter( 'woocommerce_price_ex_tax_amount', 'custom_price_ex_tax_function_2', 10, 2 );
function custom_price_ex_tax_function_2( $price, $product ) {
if ( $product->is_on_sale() ) {
return $price - 2; // セール商品の場合は2ドル引き
}
return $price;
}
ここでは、セール価格の商品に対して2ドルの割引を行い、その価格を表示します。
サンプルコード3
add_filter( 'woocommerce_price_ex_tax_amount', 'custom_price_ex_tax_function_3', 10, 2 );
function custom_price_ex_tax_function_3( $price, $product ) {
return round($price, 2); // 小数点以下2桁に丸める
}
このコードは、税抜き価格を小数点以下2桁に丸めて表示します。
サンプルコード4
add_filter( 'woocommerce_price_ex_tax_amount', 'custom_price_ex_tax_function_4', 10, 2 );
function custom_price_ex_tax_function_4( $price, $product ) {
return $price * ( 1 - 0.15 ); // 15%の割引を適用
}
この例では、全ての商品に対して15%の割引を適用し、その新しい税抜き価格を計算します。
サンプルコード5
add_filter( 'woocommerce_price_ex_tax_amount', 'custom_price_ex_tax_function_5', 10, 2 );
function custom_price_ex_tax_function_5( $price, $product ) {
if ( is_user_logged_in() && current_user_can( 'premium_member' ) ) {
return $price * 0.9; // プレミアムメンバーには10%割引
}
return $price;
}
このコードは、ログインしたプレミアムメンバーに対してのみ10%の割引を適用し、その税抜き価格を表示します。