我们有一个联盟网站,我们正在尝试跟踪出站联属网站的点击次数。我将以下代码插入到我们的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的联系并保持联盟链接的顺利进行?
谢谢!
答案 0 :(得分:0)
所以问题是您在onclick="trackOutboundLink('http://domain.com')
...
相反,这应该有效:
onclick="trackOutboundLink(this.href); return false;"
这应该使用链接的“href”属性的值。
话虽如此,我强烈建议使用原生DOM事件而不是html“onclick”属性。
例如,使用jQuery:
$("a").click(function(event) {
event.preventDefault();
trackOutboundLink(this.href);
});
<强>更新强>
事件侦听器方法(第二个选项)的主要好处是,对于同一事件,同一DOM节点上可以有多个事件侦听器。 This SO answer非常详细地解释了这一点。
希望这有帮助!
答案 1 :(得分:0)
因此,您希望跟踪完整的网址而不是根路径。 请尝试使用这个。
var trackOutboundLink = function(event) {
event.preventDefault();
var url = event.target.href;
ga('send', 'event', 'outbound', 'click', url, {
'transport': 'beacon',
'hitCallback': function(){document.location = url;}
});
}
我希望它会对你有所帮助。