2011-08-11 99 views
3

我有一個網站,其中每個用戶註冊爲子域名(username.domain.com)。 我跟蹤所有子域與folllowing代碼:谷歌分析API - 跟蹤子域名

var _gaq = _gaq || []; 
    _gaq.push(['_setAccount', 'UA-XXXXXX-X']); 
    _gaq.push(['_setDomainName', '.domain.com']); 
    _gaq.push(['_trackPageview']); 

    (function() { 
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true; 
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js'; 
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s); 
    })(); 

我想顯示使用GA API的每個用戶自定義的統計數據。 由於我只使用一個GA帳戶來跟蹤所有「子域」,我如何篩選數據以便僅顯示每個用戶(子域)的數據?

謝謝。

回答

3

setDomainName僅與Google Analytics用於跟蹤會話的Cookie相關。也就是說,按照您的設置進行設置,這樣可以始終如一地跟蹤這些子域中的所有流量。

但是,這並不會更改發送到Google Analytics的域數據。所有匹配都會通過綜合瀏覽量的主機名(JavaScript中的document.domain)發送到Google Analytics。該值可在維度ga:hostname下的API中訪問。您可以將其用作查詢的維度,或者將其用作數據的過濾器(即,「只返回我查詢此特定過濾器的數據)。

因此,無論setDomainName配置如何,您將可以使用Google AnalyticsAPI在子域級別上訪問和分段。

+0

非常感謝您的回答。它工作正常。但是我不想子域名(username.domain .com)的數據與我的主域(domain.com)統計數據混合在一起,我應該如何避免它? – AFRC

+0

你有兩個選擇:一,你可以爲子域使用不同的跟蹤代碼,而不是主域。您可以創建一個配置文件過濾器*,僅用於匹配您的主域的流量,然後針對所有其他域或ju創建一個這是一個未經過濾的大概況。 – Yahel

+0

我認爲另一個配置文件(跟蹤代碼)是最好的選擇。但因爲我使用'_gaq.push(['_ setDomainName','.domain.com'])'我將混合所有數據? (子域和主域) – AFRC