概要
woocommerce_apply_tracking
アクションは、WooCommerceのトラッキング機能を関連づけるためのフックです。このアクションは、特定の処理が完了した後にトラッキング情報を適用する際に使用されます。一般的に、次のような機能を実装する場合に利用されます。
- 商品購入後のデータトラッキング
- ユーザー行動の分析
- 売上データの収集
- キャンペーンやプロモーションの効果測定
- 定期的なレポート作成
- 外部トラッキングサービスとの連携
構文
do_action('woocommerce_apply_tracking', $order_id);
パラメータ
$order_id
: トラッキングを適用するオーダーのID(integer)。
戻り値
このアクションは戻り値を持ちません。
使用可能なプラグインおよびバージョン
- 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_apply_tracking', 'custom_tracking_function', 10, 1);
function custom_tracking_function($order_id) {
// トラッキングコードをオーダーに追加
update_post_meta($order_id, '_tracking_code', 'TRACK123');
}
このサンプルコードでは、オーダーが完了した際にトラッキングコードをオーダーに追加します。
サンプルコード2
add_action('woocommerce_apply_tracking', 'log_order_tracking', 10, 1);
function log_order_tracking($order_id) {
// トラッキング情報をログに記録
error_log('Order ID: ' . $order_id . ' tracking applied.');
}
このコードは、トラッキングが適用されたオーダーIDをエラーログに記録します。
サンプルコード3
add_action('woocommerce_apply_tracking', 'notify_external_service', 10, 1);
function notify_external_service($order_id) {
// 外部トラッキングサービスへ通知
$response = wp_remote_post('https://external-tracking-service.com/api/track', array(
'method' => 'POST',
'body' => json_encode(array('order_id' => $order_id)),
'headers' => array('Content-Type' => 'application/json'),
));
}
このサンプルコードは、オーダーのトラッキング情報を外部APIに送信します。
サンプルコード4
add_action('woocommerce_apply_tracking', 'track_conversion', 10, 1);
function track_conversion($order_id) {
// コンバージョンをトラッキング
$conversion_data = array('order_id' => $order_id, 'status' => 'completed');
// トラッキングシステムのAPIへデータ送信
track_conversion_api($conversion_data);
}
このコードでは、コンバージョンをトラッキングするためのデータをAPIに送信します。
サンプルコード5
add_action('woocommerce_apply_tracking', 'send_order_thank_you_email', 10, 1);
function send_order_thank_you_email($order_id) {
// オーダー完了メールを送信
$order = wc_get_order($order_id);
wp_mail($order->get_billing_email(), 'Thank you for your order!', 'Your order has been processed.');
}
このサンプルでは、オーダー完了時に顧客に「ありがとう」のメールを送信します。