簡體   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