Facebook使用转换像素代码跟踪页内事件

时间:2015-04-14 18:23:23

标签: facebook events onclick

完全披露 - 我不是程序员,但我是组织中唯一一个能够让这个工作的人。有人可以帮助以下吗?

我尝试使用Facebook的转换像素代码来跟踪我们网站上的某些按钮点击。 Facebook的开发者文档提供了跟踪页内活动的以下说明:

安装基本代码段后,您可以通过对转化像素进行_fbq.push(' track')调用来跟踪页内操作,例如点击按钮通过在HTML DOM元素上注册不同的事件处理程序。例如:

function trackConversionEvent(val, cny) {
  var cd = {};
  cd.value = val;
  cd.currency = cny;
  _fbq.push(['track', '<pixel_id>', cd]);
}
<button onClick="trackConversionEvent('10.00','USD');" /

我面临的问题是,我不清楚Facebook的含义是基本代码片段&#34;。我最初的假设是它们是你在页面的head部分安装的转换像素代码,即

<!-- Facebook Conversion Code -->
<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;
  }
})();
window._fbq = window._fbq || [];
window._fbq.push(['track', '<pixel_id>', {'value':'0.00','currency':'USD'}]);
</script>
<noscript><img height="1" width="1" alt="" style="display:none" src="https://www.facebook.com/tr?ev=<pixel_id>&amp;cd[value]=0.00&amp;cd[currency]=USD&amp;noscript=1" /></noscript>

但是,如果我在页面上安装上述内容,则每次加载页面时都会加载/触发转换像素代码,而不是点击按钮(可能是因为它通常用于感谢/确认页面) 。谁能为我解释这个问题?我相信我理解在哪里定位onClick代码以将其与按钮点击相关联,但我很难理解我需要在哪里定位trackConversionEvent代码以及基本代码片段是什么。通过测试,我知道从较大的代码片段中删除以下行会阻止像素加载:

window._fbq = window._fbq || [];
window._fbq.push(['track', '<pixel_id>', {'value':'0.00','currency':'USD'}]);

但我不确定这是否真的需要我做。例如,我是否需要使用trackConversionEvent代码替换这两行,以便在页面加载时像素不会触发但是当单击按钮时onClick代码实际上起作用了?

非常感谢任何提示或建议。

1 个答案:

答案 0 :(得分:2)

这应该有用,我刚刚在基于WP的博客上测试过。

<!-- Facebook Conversion Code -->
<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;
  }
 })();
 window._fbq = window._fbq || [];

</script>
<noscript><img height="1" width="1" alt="" style="display:none" src="https://www.facebook.com/tr?ev=<pixel_id>&amp;cd[value]=0.00&amp;cd[currency]=USD&amp;noscript=1" /></noscript>     

<!-- End Of Facebook Conversion Code -->

这是可以绑定到任何按钮,链接或任何DOM元素::

的事件处理程序
function trackConversionEvent(val, cny) {
  var cd = {};
  cd.value = val;
  cd.currency = cny;
  _fbq.push(['track', '<pixel_id>', cd]);
}

<button onClick="trackConversionEvent('10.00','USD');"