我需要跟踪用户注册(例如:在“谢谢”页面上包含跟踪代码)。
据我所知,当用户在结帐页面上进行注册时,formatDate
或$customer
对象内部的注册一无所知。另外,没有查询变量可以对此进行标记。
我如何找到这个?作为替代方案,我很高兴为此提供任何替代跟踪选项。
我尝试使用$order
钩对此进行检查。
另外,我知道在这种情况下,用户在签出后登录。
答案 0 :(得分:0)
我自己的解决方案不是最合适的方法,但是可以解决。
因为在结帐期间注册会自动登录用户,所以我可以将注册日期与ThankYou页面生成时间进行比较。在这种情况下,如果用户在最近30秒内注册,则跟踪代码将放置在“谢谢”页面上。
add_action( 'woocommerce_thankyou', 'add_tracking_code_to_thankyou', 10, 1 );
function add_tracking_code_to_thankyou( $order_id ) {
// Only for logged in users
if ( $order_id && is_user_logged_in() ) {
$udata = wp_get_current_user();
$registered = new \DateTime($udata->user_registered);
$current = new \DateTime();
// get seconds elapsed after user registration
$interval = $current->format('U') - $registered->format('U');
if ($interval <= 30) {
// echo 'tracking code';
}
}
}