我们有一个联属网站,并且我们正在尝试跟踪出站联属网站的点击次数。我将以下代码插入到我们的 html 中。
在标题中:
<script>
/**
* Function that tracks a click on an outbound link in Analytics.
* This function takes a valid URL string as an argument, and uses that URL string
* as the event label. Setting the transport method to 'beacon' lets the hit be sent
* using 'navigator.sendBeacon' in browser that support it.
*/
var trackOutboundLink = function(url) {
ga('send', 'event', 'outbound', 'click', url, {
'transport': 'beacon',
'hitCallback': function(){document.location = url;}
});
}
</script>
在链接正文中:
<a href="http://domain.com?aff_link=123456" onclick="trackOutboundLink('http://domain.com'); return false;"> The link </a>
此脚本正确跟踪联属链接点击,但在用户单击时设法从域中剥离联属代码。换句话说
http://domain.com?aff_link=123456
成为了
http://domain.com
因此,没有追踪到任何佣金。有谁知道为什么会发生这种情况以及如何跟踪与 GA 的链接并保持联属链接完好无损?
谢谢!
最佳答案
所以问题是您在 onclick="trackOutboundLink('http://domain.com')
中传递了一个没有附属信息的网址 ...
这应该有效:
onclick="trackOutboundLink(this.href); return false;"
这应该使用链接的“href”属性的值。
话虽这么说,我强烈建议使用 native DOM 事件而不是 html“onclick”属性。
例如,使用 jQuery:
$("a").click(function(event) {
event.preventDefault();
trackOutboundLink(this.href);
});
更新
事件监听器方法(第二个选项)的主要好处是,对于同一个事件,同一 DOM 节点上可以有多个事件监听器。 This SO answer解释得很好,很详细。
希望这有帮助!
关于javascript - 谷歌分析链接跟踪 javascript 删除附属链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41944827/