繁体   English   中英

谷歌分析链接跟踪javascript剥离联盟链接

[英]Google analytics link tracking javascript strips affiliate links

我们有一个联盟网站,我们正在尝试跟踪出站联属网站的点击次数。 我将下面的代码插入到我们的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('http://domain.com') ...

相反,这应该工作:

onclick="trackOutboundLink(this.href); return false;"

这应该使用链接的“href”属性的值。

话虽如此,我强烈建议使用原生DOM事件而不是html“onclick”属性。

例如,使用jQuery:

$("a").click(function(event) {
    event.preventDefault();
    trackOutboundLink(this.href);
});

UPDATE

事件侦听器方法(第二个选项)的主要好处是,对于同一事件,同一DOM节点上可以有多个事件侦听器。 这个SO答案很好地解释了它,非常详细。

希望这可以帮助!

因此,您希望跟踪完整的URL而不是根路径。 请尝试使用这个。

var trackOutboundLink = function(event) {
   event.preventDefault();
   var url = event.target.href;
   ga('send', 'event', 'outbound', 'click', url, {
      'transport': 'beacon',
      'hitCallback': function(){document.location = url;}
   });
}

我希望它会对你有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM