我想将客户的电子邮件地址推送到订单页面上的数据层。这用于 Google Ads 增强型转化
我尝试了不同的解决方案,但似乎没有什么对我有用。
有什么好的建议,还是根本无法抓取电子邮件并推送到数据层?
最佳答案
您可以在致谢页面上注入(inject)脚本并将电子邮件推送到数据层,如下所示:
add_action( 'wp_head', 'add_ec_mail' );
function add_ec_mail(){
if( is_wc_endpoint_url( 'order-received' ) ) :
$order_id = absint( get_query_var('order-received') );
if( get_post_type( $order_id ) !== 'shop_order' ) return; // Exit
$order = wc_get_order( $order_id );
?>
<script>
window.dataLayer = window.dataLayer || []; window.dataLayer.push({ 'ecomm_mail': '<?php echo $order->get_billing_email(); ?>' });
</script>
<?php
endif;
}
我已将您的 ec_mail
调整为 ecomm_mail
,因为它似乎是当前格式。
关于Woocommerce 将客户电子邮件推送到 dataLayer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72370583/