在Woocommerce收到订单页面中设置Google转化代码事件代码值

时间:2018-09-19 16:59:42

标签: javascript php wordpress woocommerce google-tag-manager

我正在尝试将Google Adwords转换标签安装到Wordpress中;特别是Woocommerce。我们已经尝试了插件,但是与其他项目存在冲突,因此我们现在尝试手动实现它。

在我们的functions.php文件中放置了以下“事件”标签:

add_action( 'woocommerce_thankyou',    'conversion_tracking_thank_you_page' );

function conversion_tracking_thank_you_page() {
?>
<!-- Event snippet for Transaction conversion page -->
<script>
 gtag('event', 'conversion', {
  'send_to': 'AW-######/######',
  'value': 1.0,
  'currency': 'USD',
  'transaction_id': '
 });
</script>
<?php
}

它可以正确提取,但是所有事务默认为$ 1。如果没有交易价值,我们可以将此设置恢复为$ 1,但是我们希望从Woocommerce中提取交易价值。我到处搜索,找不到特定于事件标签的正确代码,无法从Woocommerce提取此值。

1 个答案:

答案 0 :(得分:1)

已更新

尝试以下(您必须在其中设置正确的'send_to'替换'AW-######/######'

add_action( 'woocommerce_thankyou', 'conversion_tracking_thank_you_page', 95, 1 );
function conversion_tracking_thank_you_page( $order_id ) {
    if( ! $order_id )
        return;

    // Get the WC_Order instance Object
    $order = wc_get_order( $order_id ); 
    ?>
    <!-- Google Tag: Transaction conversion event -->
    <script>
    gtag('event', 'conversion', {
      'send_to'       : 'AW-######/######',
      'value'         : <?php echo $order->get_total(); ?>,
      'currency'      : '<?php echo $order->get_currency(); ?>',
      'transaction_id': <?php echo $order->get_transaction_id() ? $order->get_transaction_id() : $order_id; ?>
    });
    </script>
    <?php
}

代码进入您的活动子主题(或活动主题)的function.php文件中。经过测试的输出…这次应该可以工作。


类似的答案: