概要
woocommerce_after_shipping_rate
アクションは、WooCommerceでの配送オプションが表示された後に実行されるフックです。このアクションは、追加の情報を表示したり、特定の条件に基づいてカスタマイズを行う際に便利です。具体的には、以下の機能を実装する際によく使用されます:
- 配送料金の下にカスタムメッセージを表示する
- 特定の条件に基づいて追加の手数料を計算する
- 商品の重さや寸法による配送料の調整
- プロモーションや特別オファーの表示
- 配送方法に応じた異なるメッセージの表示
- ユーザーの地域に基づいた情報の表示
構文
do_action( 'woocommerce_after_shipping_rate', $method, $index );
パラメータ
$method
:利用可能な配送方法(オブジェクト)$index
:配送料金のインデックス(整数)
戻り値
このアクションは戻り値を返しませんが、フック内で出力を行うことができます。
使用可能なプラグイン / バージョン
- 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_after_shipping_rate', 'custom_message_after_shipping', 10, 2 );
function custom_message_after_shipping( $method, $index ) {
echo '<p>こちらの配送方法をご利用いただけます。</p>';
}
このサンプルでは、すべての配送オプションの下にカスタムメッセージを表示しています。
サンプルコード 2
add_action( 'woocommerce_after_shipping_rate', 'conditional_shipping_fee', 10, 2 );
function conditional_shipping_fee( $method, $index ) {
if ( WC()->cart->subtotal > 100 ) {
echo '<p>100円以上のお買い上げで、送料無料になります!</p>';
}
}
このサンプルは、カートの合計が100円を超える場合に特定のメッセージを表示しています。
サンプルコード 3
add_action( 'woocommerce_after_shipping_rate', 'display_shipping_discount', 10, 2 );
function display_shipping_discount( $method, $index ) {
$discount = 500; // 割引額
echo '<p>次回のお買い物で使える500円割引チケットをプレゼント!</p>';
}
このサンプルでは、配送方法の下に次回の購入に使えるディスカウント情報を表示します。
サンプルコード 4
add_action( 'woocommerce_after_shipping_rate', 'custom_shipping_alert', 10, 2 );
function custom_shipping_alert( $method, $index ) {
if ( 'flat_rate' === $method->id ) {
echo '<p>フラットレート配送にてご利用いただけます。</p>';
}
}
このサンプルは、特定の配送メソッドが選択されたときに専用メッセージを表示します。
サンプルコード 5
add_action( 'woocommerce_after_shipping_rate', 'local_shipping_notice', 10, 2 );
function local_shipping_notice( $method, $index ) {
if ( 'local_pickup' === $method->id ) {
echo '<p>お近くの店舗でのお受け取りが可能です。</p>';
}
}
このサンプルでは、ローカルピックアップの配送方法が選ばれた場合に、店舗受け取りに関するメッセージを表示しています。