概要
woocommerce_before_cart_emptied
は、WooCommerceのカートが空になる直前に実行されるアクションフックです。このアクションは、カートが空になる前に特定の処理を実行したい場合に使用されます。主に以下のような場面で利用されます。
- カートが空になることを通知するメールを送信する。
- ショップのロジックに基づいてクーポンを適用する。
- カートが空になることに対するユーザーへのお知らせを表示する。
- ユーザーのエンゲージメントを高めるメッセージを追加する。
- サイト分析用のトラッキングイベントを送信する。
- ランディングページや購入促進のためのリダイレクトを行う。
構文
do_action( 'woocommerce_before_cart_emptied' );
パラメータ
このアクションにはパラメータはありません。
戻り値
このアクションは戻り値がありませんが、フックを通じてカスタム関数を実行することができます。
互換性
- WooCommerceのバージョン: 2.6.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_before_cart_emptied', 'send_cart_empty_email' );
function send_cart_empty_email() {
$to = 'user@example.com';
$subject = 'Your Cart is About to be Emptied';
$message = 'Your cart is about to be emptied. Don’t miss out on your items!';
wp_mail( $to, $subject, $message );
}
このコードは、カートが空になる前に、指定されたメールアドレスに通知メールを送信します。
サンプル 2: カートのクーポンを適用
add_action( 'woocommerce_before_cart_emptied', 'apply_coupon_before_cart_empty' );
function apply_coupon_before_cart_empty() {
if ( ! WC()->cart->has_discount( 'SAVE10' ) ) {
WC()->cart->apply_coupon( 'SAVE10' );
}
}
このコードは、カートが空になる前に、特定のクーポン(ここでは「SAVE10」)を適用します。
サンプル 3: ユーザーへのメッセージ表示
add_action( 'woocommerce_before_cart_emptied', 'display_cart_empty_notice' );
function display_cart_empty_notice() {
echo '<div class="notice notice-warning">カートが空になります!お早めにご購入ください。</div>';
}
このコードは、カートが空になる前に、警告メッセージを表示します。
サンプル 4: トラッキングイベントの送信
add_action( 'woocommerce_before_cart_emptied', 'send_tracking_event' );
function send_tracking_event() {
// Google Analytics等でイベントを送信する例
echo "<script>ga('send', 'event', 'Cart', 'emptied');</script>";
}
このコードは、カートが空になる際にGoogle Analyticsにイベントを送信します。
サンプル 5: カート空時のリダイレクト
add_action( 'woocommerce_before_cart_emptied', 'redirect_empty_cart' );
function redirect_empty_cart() {
wp_redirect( home_url() );
exit;
}
このコードは、カートが空になる前にユーザーをホームページにリダイレクトします。