2014-10-27 137 views
0

我想讓我的Facebook轉換跟蹤代碼在有人點擊添加到購物車按鈕時觸發。我做了以下更改,儘管Facebook仍然將像素顯示爲未驗證。WooCommerce OnClick添加到購物車不燒?

我不確定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); 

這是我的環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上顯示驗證結果。

回答

0

使用以下腳本將信息加載到頁面上,並等待添加到購物車按鈕來觸發跟蹤代碼和金額。

<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> 
相關問題