2013-05-15 50 views
2

我使用下面的代碼爲什麼Google Analytics不會使用_setcustomvar跟蹤我所有的事件?

_gaq.push(['_setCustomVar',1,'logged-in','administrator',1],['_trackPageview']);

跟蹤登錄用戶的級別我的網站上(運行WordPress的)。

現在我的問題是,在上個月我有大約100個新的註冊,但Google Analytics只顯示我在我的網站上活躍的65個註冊用戶。

這是解釋結果時出錯還是我做錯了什麼?

回答

0

前導
使用Google Analytics(分析)時,您無法獲得所有匹配的記錄。這不是GA的具體問題。任何分析工具都可能受到影響。

想象一下,例如,用戶在WP網站註冊時連接斷開。機會是JavaScript代碼不會被執行。新用戶希望註冊,但GA不會收到通知。


替代方法
這個解決辦法是GA捆綁通知您註冊過程中正確在服務器端

第1步:註冊一個PHP函數與user_register鉤。

 
add_action('user_register', 'myplugin_registration_save'); 
function myplugin_registration_save($user_id) { 
    // GA will be notified here ... 
} 

步驟2:這裏面registred功能通知新用戶註冊的GA。
這裏是php-ga。這是一個用PHP編寫的GA客戶端。您幾乎可以實現原始GA Javascript客戶端的每個參數和跟蹤功能。叫它跟蹤你的GA定製變量。

這裏是從PHP-GA網站示例代碼:

use UnitedPrototype\GoogleAnalytics; 

// Initilize GA Tracker 
$tracker = new GoogleAnalytics\Tracker('UA-12345678-9', 'example.com'); 

// Assemble Visitor information 
// (could also get unserialized from database) 
$visitor = new GoogleAnalytics\Visitor(); 
$visitor->setIpAddress($_SERVER['REMOTE_ADDR']); 
$visitor->setUserAgent($_SERVER['HTTP_USER_AGENT']); 
$visitor->setScreenResolution('1024x768'); 

// Assemble Session information 
// (could also get unserialized from PHP session) 
$session = new GoogleAnalytics\Session(); 

// Assemble Page information 
$page = new GoogleAnalytics\Page('/page.html'); 
$page->setTitle('My Page'); 

// Track page view 
$tracker->trackPageview($page, $session, $visitor); 


有更多
即使實施變通辦法,也未必能夠成功地通知GA。例如,如果GA服務器試驗了一些沉重的負載,您的通知可能會丟失。

我建議你同時使用系統通知:GA Javascript客戶端AND GA PHP客戶端。

將它們分配給兩個不同的事件'JS-new-user-registred'和'PHP-new-user-registred'。通過兩次註冊活動,您可以提高分析數據的質量。您也可以提高新的註冊通知率。

請務必記住,這種方法可能不是100%準確的。例如,在客戶端,ga.js文件可能被阻止(防火牆等)。同時,您的PHP客戶端可能無法成功通知GA。結果是新的註冊不被跟蹤。

+0

感謝您的快速和廣泛的答覆。 所以基本上你說GA數據「錯誤」並不罕見?嗯,我不知道。由於連接斷開等原因,我偶爾可以放棄訪問者,但不能以僅註冊2/3用戶的方式訪問。 但我會在你建議的php-ga解決方案中去。 兩隻眼睛比一隻眼睛好看:) – Daniel

相關問題