【发布时间】:2015-04-14 18:23:22
【问题描述】:
完全披露 - 我不是程序员,但我是我所在组织中唯一能够完成这项工作的人。有人可以帮忙解决以下问题吗?
我正在尝试使用 Facebook 的转换像素代码来跟踪我们网站上的某些按钮点击。 Facebook 的开发者文档提供了以下关于跟踪页内事件的说明:
安装基本代码 sn-p 后,您可以通过注册不同的转换像素调用 _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 所说的“基本代码 sn-p”是什么意思。我最初的假设是他们给你的转换像素代码安装在页面的头部,即
<!-- 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>&cd[value]=0.00&cd[currency]=USD&noscript=1" /></noscript>
但是,如果我在我们的页面上安装上述内容,它会在每次页面加载时加载/触发转换像素代码,而不是在单击按钮时(大概是因为它通常用于感谢/确认页面)。任何人都可以为我阐明这一点吗?我相信我知道将 onClick 代码放置在哪里以将其与按钮单击相关联,但我很难理解我需要将 trackConversionEvent 代码放置在哪里以及基本代码 sn-p 是什么。通过测试,我知道从较大的代码中删除以下行 sn -p 会阻止像素加载:
window._fbq = window._fbq || [];
window._fbq.push(['track', '<pixel_id>', {'value':'0.00','currency':'USD'}]);
但我不确定这是否真的是我需要做的。例如,我是否需要将这两行替换为 trackConversionEvent 代码,以便在页面加载时像素不会触发,但在单击按钮时 onClick 代码实际上会起作用?
非常感谢您的任何指点或建议。
【问题讨论】: