概要
woocommerce_formatted_refund_amount フィルタは、WooCommerce の返金額をフォーマットして表示する際に使用されます。このフィルタを使用することで、返金金額の表示をカスタマイズすることが可能です。主に以下のような機能を実装する時に利用されます。
- 返金額の通貨記号の変更
- 返金額の小数点の形式を変更
- 返金額の色やスタイルを変更
- 特定条件下での返金額の表示形式の変更
- 返金額を特定のフォーマットで表示(例: カンマ区切り)
- ユーザーのロールや状況に基づく表示のカスタマイズ
構文
add_filter( 'woocommerce_formatted_refund_amount', 'your_custom_function', 10, 2 );
パラメータ
– $formatted_amount: フォーマットされた返金額。
– $refund: 返金のオブジェクト。
戻り値
– カスタマイズされたフォーマットに基づいた返金額。
使用可能なプラグインバージョン
– WooCommerce: 3.0.0 以降
– WordPress: 4.0 以降
サンプルコード
サンプルコード 1: 通貨記号を変更する
add_filter( 'woocommerce_formatted_refund_amount', 'custom_refund_currency_symbol', 10, 2 );
function custom_refund_currency_symbol( $formatted_amount, $refund ) {
return str_replace( '¥', '$', $formatted_amount ); // 日本円から米ドルに変更
}
このコードは、返金額のフォーマットにおいて、通貨記号を日本円「¥」から米ドル「$」に変更します。
サンプルコード 2: 小数点の形式を変更する
add_filter( 'woocommerce_formatted_refund_amount', 'custom_refund_decimal_format', 10, 2 );
function custom_refund_decimal_format( $formatted_amount, $refund ) {
return number_format((float)$refund->amount, 2, ',', '.');
}
このコードは、小数点以下をカンマ区切りに変更し、点で区切られた形式にフォーマットします。
サンプルコード 3: 返金額の色を変更する
add_filter( 'woocommerce_formatted_refund_amount', 'custom_refund_amount_color', 10, 2 );
function custom_refund_amount_color( $formatted_amount, $refund ) {
return '<span style="color: red;">' . $formatted_amount . '</span>'; // 返金額を赤色で表示
}
このコードでは、返金額が赤色で表示されるようにカスタマイズします。
サンプルコード 4: 特定条件下での表示形式の変更
add_filter( 'woocommerce_formatted_refund_amount', 'conditional_refund_formatting', 10, 2 );
function conditional_refund_formatting( $formatted_amount, $refund ) {
if ( $refund->amount < 0 ) {
return '<strong>' . $formatted_amount . '</strong>'; // 返金額が負の場合は太字で表示
}
return $formatted_amount;
}
このコードは、返金額が負である場合、返金額を太字で表示します。
サンプルコード 5: ユーザーのロールに基づく表示のカスタマイズ
add_filter( 'woocommerce_formatted_refund_amount', 'role_based_refund_display', 10, 2 );
function role_based_refund_display( $formatted_amount, $refund ) {
if ( current_user_can( 'administrator' ) ) {
return '<em>' . $formatted_amount . '</em>'; // 管理者の場合、斜体で表示
}
return $formatted_amount;
}
このコードは、ユーザーが管理者である場合、返金額を斜体で表示します。
この関数のアクションでの使用可能性
| アクション | 使用可能性 |
|---|---|
| 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 |