【问题标题】:WooCommerce OnClick Add to Cart Not Firing?WooCommerce OnClick 添加到购物车未触发?
【发布时间】:2014-12-22 23:20:32
【问题描述】:

我试图让我的 Facebook 转化跟踪代码在有人单击“添加到购物车”按钮时触发。我进行了以下更改,尽管 Facebook 仍将像素显示为未验证。

我不确定 ajax 添加到购物车是否会干扰 onclick 事件。

这是我的加入购物车按钮:

echo apply_filters( 'woocommerce_loop_add_to_cart_link',
    sprintf( '<a href="%s" rel="nofollow" data-product_id="%s" data-product_sku="%s" data-quantity="%s" onclick="facebookConversionPixel(%s);" class="button %s product_type_%s">%s</a>',
        esc_url( $product->add_to_cart_url() ),
        esc_attr( $product->id ),
        esc_attr( $product->get_sku() ),
        esc_attr( isset( $quantity ) ? $quantity : 1 ),
        esc_attr( $product->get_price() ),
        $product->is_purchasable() && $product->is_in_stock() ? 'add_to_cart_button' : '',
        esc_attr( $product->product_type ),
        esc_html( $product->add_to_cart_text() )
    ),
$product );

这是我的 loop-start.php 文件的一部分:

<script> 
function facebookConversionPixel(fb_value){   
    var _fbq = window._fbq || (window._fbq = []);
  if (!_fbq.loaded) {
    var fbds = document.createElement('script');
    fbds.async = true;
    fbds.src = '//connect.facebook.net/en_US/fbds.js';
    var s = document.getElementsByTagName('script')[0];
    s.parentNode.insertBefore(fbds, s);
    _fbq.loaded = true;
  }
})();
window._fbq = window._fbq || [];
window._fbq.push(['track', '6018460172323', {'value':+ fb_value,'currency':'USD'}]);
}
</script>
<ul class="products clearfix products-<?php echo $woocommerce_loop['columns']; ?>">

我刚刚添加了 fb_value,我不确定我是否正确添加了它。我确实尝试过,但仍然没有在 Facebook 端显示验证。

【问题讨论】:

    标签: javascript php wordpress facebook woocommerce


    【解决方案1】:

    使用以下脚本将信息加载到页面上并等待添加到购物车按钮触发跟踪代码和金额。

    <script>
    (function () {
      var _fbq = window._fbq || (window._fbq = []);
      if (!_fbq.loaded) {
        var fbds = document.createElement('script');
        fbds.async = true;
        fbds.src = '//connect.facebook.net/en_US/fbds.js';
        var s = document.getElementsByTagName('script')[0];
        s.parentNode.insertBefore(fbds, s);
        _fbq.loaded = true;
      }
    })();
    function facebookConversionPixel(fb_value) {
      window._fbq = window._fbq || [];
      window._fbq.push(['track', '6018460172323', {'value':fb_value,'currency':'USD'}]);
    }
    </script>
    

    【讨论】:

      猜你喜欢
      • 2015-08-18
      • 2014-02-25
      • 2015-10-10
      • 2011-01-30
      • 2015-03-11
      • 2013-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多