沒穿方服

索引

顯示╱隱藏內文
顯示具有 Google 標籤的文章。 顯示所有文章
顯示具有 Google 標籤的文章。 顯示所有文章
Known Issues .blogspot

幾乎所有 blogger.com 的 blog 送交 W3C Markup Validator 都能驗出錯誤,其中很多是 blogger 自動產生的原始碼,想改也改不掉。

這個問題至少 2006 年起就有人在 Blogger Help Group 留言或寄信反應,但是官方一直沒修正,儘管問題看起來好像很簡單——以此 blog 來說,只剩下新/舊文章連結的 & 要改成 &、留言內容的標籤名稱要改成小寫,兩個地方而已。

當然 invalid 未必有什麼毒害,只是 Google 擺著幾個小問題(假設是小問題)不管以致無法通過檢驗,教人煩悶。

回報方式除了 Blogger Help Group 外,說明中心有個 Wishlist,另好像也有 Contacting Support 不過我找不到信箱位址……根據論壇使用者說法,官方回信這問題被歸為「低優先性」所以進展較慢。至於有多慢呢?至少在 Known Issues for Blogger 還找不到,可見 valid XHTML 真是沒有普遍需求的東西啊。

小改之前寫的 bookmarklet,現在不限於 Blogger,在 Google SitesGoogle Code 等應該都能通用了。

將 bookmarklet 加進書籤便可使用 → 設定排除用的 Cookie (Google Analytics)

原始碼拆開如下:

if(typeof(_gat)=='undefined'){
  alert("無法在這個網頁運作(我們找不到 _gat),抱歉。");
  return;
}
var leqTracker = _gat._getTracker();
if(leqTracker){
  var v=prompt("請輸入要用於「篩選器模式」的字串:","test_value");
  if(v!=null){
    leqTracker._setVar(v);
    alert("已設定 cookie: "+v);
  }
}

細節請參考前文 銀盾石榴: Google Analytics:按 cookie 內容排除自己的流量

2008-06-30: 修改為不限 blogspot 專用,請參考新版 bookmarklet

官方說明的具體步驟中,首先的 <body onLoad="javascript pageTracker._setVar('test_value');"> 跟後面「設定篩選器」看起來似乎沒關聯:

「無報告」原文推測為 no_report(不知道哪來的)

請注意「篩選器模式」的值是怪異的「無報告」,換成英文版一看:

英文的 Filter Patterm: test_value

變成 test_value 了 …… 跟 pageTracker._setVar('test_value'); 設的值吻合 —— 所以是翻譯沒做好啊。


實際上 pageTracker._setVar('test_value'); 會在電腦上儲存一個 __utmv=123456789.test_value 的 cookie,其中 123456789 每個網站都不一樣。一旦訪客電腦裡有這個 cookie,在 Google Analytics 的「訪客 - 使用者定義」就會出現:

test_value 出現了

然後設定「篩選器模式」為 test_value,該報告就會被排除,不再出現。

如此一來,具體流程「建立會設定 cookie 的網頁 → 造訪該網頁以設定 cookie → 設定篩選器排除具有該 cookie 的電腦」應該很清楚了。


還沒完,blogspot 使用者還有問題:要在哪建立新網頁?

新網頁需要在 body onLoad 動手腳,而且不能讓一般訪客看到(有看到就會被下 cookie 而遭排除)—— 很麻煩。

所以我想改用 bookmarklet 的方式,內容就是找到 pageTracker,請他 ._setVar 即可。原始碼拆開如下:

javascript:
if(pageTracker) {
  var v=prompt(%22請輸入要用於「篩選器模式」的字串:%22,%22test_value%22);
  if(v!=null) {
    pageTracker._setVar(v);alert(%22已設定 cookie: %22+v);
  }
}
void 1

將 bookmarklet 加進書籤便可使用 → 設定排除用的 Cookie (Google Analytics)

完整流程:

  1. 將前述 bookmarklet 加進書籤列。
  2. 打開網站的首頁,然後點前述 bookmarklet,應該會跳出對話框:

    對話框內容
    (如果沒反應,就是找不到 pageTracker 而發生錯誤,不會有任何效果)

  3. 填一個字串進去。不一定要填 test_value
  4. 前往 Google Analytics 設定篩選器,「篩選器模式」填剛才回答的字串。
    我的設定長這樣,請別連名字都照抄:

    篩選器設定

  5. 別忘了把篩選器套用至網站設定檔。

這樣就完成了,我測了兩天,流量有正確尷尬下去,所以應該是有效的。