語法比較

本文件顯示多種常見追蹤自訂追蹤的追蹤程式碼。 如果您的 Google Analytics (分析) 追蹤程式碼片段包含 urchin.js 標記或傳統 ga.js 語法,請按照本指南的說明將追蹤資料遷移至改良的非同步程式碼片段。

遷移至非同步追蹤

如要將網頁改為使用非同步程式碼片段,請按照下列步驟進行:

  1. 移除現有的追蹤程式碼片段和您所做的任何自訂設定。

    為避免發生錯誤,建議您從在網頁中加入會植入檔案的現有程式碼片段或機制中移除。您可以將現有的追蹤程式碼片段貼到文字檔中,以便追蹤任何自訂方法。

  2. 非同步程式碼片段的主要優點之一,就是放在 HTML 文件頂端。這樣就能提高在使用者離開網頁前就傳送追蹤信標的可能性。 我們決定了,在大部分網頁上,非同步程式碼片段的最佳位置位於 <head> 區段的底部,緊接在 </head> 結尾標記之前。

  3. 使用網站資源 ID 修改 _setAccount 方法。

    如要進一步瞭解網站資源 ID,請參閱帳戶與資料檢視 (設定檔) 文件中的「網站資源」一節。

  4. 使用非同步語法重新加入您的自訂項目。使用本指南其餘部分所述的自訂項目。如要進一步瞭解非同步追蹤程式碼,請參閱非同步追蹤使用指南

請注意:為確保非同步程式碼片段相對於其他指令碼最為簡單,建議您採用下列其中一種方式在網站中放置其他指令碼:

  • HTML 中 <head> 區段的追蹤程式碼片段之前
  • 置於追蹤程式碼片段和所有網頁內容之後 (例如 HTML 內文的底部)

如果找不到這個選項,您仍可將非同步程式碼片段放在網頁底部。您也可以分割程式碼片段,繼續採用非同步追蹤的優點。

基本網頁追蹤

基本網頁追蹤是熟悉非同步語法的最佳方式。這些範例使用正確的帳戶設定追蹤物件,並呼叫網頁追蹤方法。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);

返回開頭

瀏覽器設定偵測

這些範例說明瀏覽器設定自訂項目,例如停用 Flash 偵測、關閉瀏覽器名稱/版本等。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setClientInfo', false]);
_gaq.push(['_setAllowHash', false]);
_gaq.push(['_setDetectFlash', false]);
_gaq.push(['_setDetectTitle', false]);
_gaq.push(['_trackPageview']);

返回開頭

廣告活動時間長度

Google Ads 廣告活動的效期預設為 6 個月。您可以使用 _setCampaignCookieTimeout() 方法調整廣告活動的放送期間。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setCampaignCookieTimeout', 31536000000]);
_gaq.push(['_trackPageview']);

返回開頭

廣告活動欄位 - 自訂

如果您已將 Google Ads 帳戶連結至 Analytics (分析) 帳戶,Google Analytics (分析) 就會自動收集您的 Google Ads 資料。若要追蹤來自其他廣告來源、電子郵件廣告活動或類似來源的關鍵字連結,您可以按照下列方法建立自訂廣告活動欄位。詳情請參閱流量來源指南中的「廣告活動追蹤」。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setCampNameKey', 'ga_campaign']);    // name
_gaq.push(['_setCampMediumKey', 'ga_medium']);    // medium
_gaq.push(['_setCampSourceKey', 'ga_source']);    // source
_gaq.push(['_setCampTermKey', 'ga_term']);        // term/keyword
_gaq.push(['_setCampContentKey', 'ga_content']);  // content
_gaq.push(['_setCampNOKey', 'ga_nooverride']);    // don't override
_gaq.push(['_trackPageview']);

返回開頭

廣告活動追蹤 - 已停用

Google Analytics (分析) 會自動啟用廣告活動追蹤功能,但您可使用 _setCampaignTrack() 方法停用此功能。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setCampaignTrack', false]);    // Turn off campaign tracking
_gaq.push(['_trackPageview']);

返回開頭

跨網域連結

如要追蹤不同網域的流量,您可以使用 _setAllowLinker() 函式來追蹤兩個網域之間的使用者點擊次數。如要進一步瞭解如何設定跨網域追蹤,請參閱「跨網域追蹤」一文。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);
...
<a href="http://example.com/test.html"
onclick="_gaq.push(['_link', 'http://example.com/test.html']); return false;">click me</a>

返回開頭

跨網域表單資料

使用 _linkByPost() 方法,即可將使用者資料從某個網域傳送至另一個網域,同時針對這兩個網域啟用跨網域追蹤。如要進一步瞭解如何設定跨網域追蹤,請參閱跨網域追蹤

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setDomainName', 'none']);
_gaq.push(['_setAllowLinker', true]);
_gaq.push(['_trackPageview']);
...
<form name="f" method="post" onsubmit="_gaq.push(['_linkByPost', this]);">
...
</form>

返回開頭

電子商務追蹤

如要使用電子商務追蹤,就必須在追蹤設定中呼叫三種主要方法。詳情請參閱「電子商務追蹤」一文。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
_gaq.push(['_addTrans',
  '1234',           // order ID - required
  'Mountain View',  // affiliation or store name
  '11.99',          // total - required
  '1.29',           // tax
  '5',              // shipping
  'San Jose',       // city
  'California',     // state or province
  'USA'             // country
]);
_gaq.push(['_addItem',
  '1234',           // order ID - required
  'DD44',           // SKU/code
  'T-Shirt',        // product name
  'Green Medium',   // category or variation
  '11.99',          // unit price - required
  '1'               // quantity - required
]);
_gaq.push(['_trackTrans']);

返回開頭

事件追蹤

使用事件追蹤時,您必須在網頁上的適當位置 (例如 onclick 處理常式) 發出事件呼叫。如要進一步瞭解事件追蹤,請參閱「事件追蹤指南」。注意:事件追蹤功能不適用於 urchin.js 追蹤程式碼。

非同步程式碼片段 (建議)

本節說明使用非同步語法設定追蹤功能的兩種方法。透過事件追蹤,onclick 處理常式使用完全相同的語法。

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_trackPageview']);
...
<a onclick="_gaq.push(['_trackEvent', 'category', 'action', 'opt_label', opt_value]);">click me</a> 

返回開頭

工作階段逾時

根據預設,使用者工作階段會在網站閒置 30 分鐘後逾時。這些範例說明如何使用 _setSessionCookieTimeout() 方法修改此內容。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setSessionCookieTimeout', 3600000]);
_gaq.push(['_trackPageview']);

返回開頭

來源 - 搜尋引擎、關鍵字和參照網址

根據預設,Google Analytics (分析) 在報表中將網站清單列為搜尋引擎參照連結網址。您可以使用這些方法修改搜尋引擎清單。詳情請參閱流量來源指南中的「搜尋引擎」一文。您也可以將 Google Analytics (分析) 設為忽略來自特定網域的參照連結網址,或將特定關鍵字搜尋視為直接流量。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_addIgnoredOrganic', 'ignore']);
_gaq.push(['_addIgnoredRef', 'urchin.com']);
_gaq.push(['_addOrganic', 'new_search_engine', 'q']);
_gaq.push(['_trackPageview']);

返回開頭

僅限於子目錄的追蹤

使用 _setCookiePath() 方法,將子目錄設為所有追蹤的預設路徑。這樣就能將所有追蹤範圍限制在網站的子目錄。

非同步程式碼片段 (建議)

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setCookiePath', '/path/of/cookie/']);
_gaq.push(['_trackPageview']);

返回開頭

使用本機伺服器

如果您使用獨立的 Urchin 軟體追蹤網站,並同時使用 Google Analytics (分析),請採用這些方法。詳情請參閱 Tracking API 參考資料的「Urchin 伺服器」部分。

非同步程式碼片段

_gaq.push(['_setAccount', 'UA-XXXXX-X']);
_gaq.push(['_setLocalRemoteServerMode']);
_gaq.push(['_trackPageview']);

返回開頭

虛擬瀏覽量

使用 _trackPageview() 方法搭配您製作的網址,追蹤未前往實際網站網頁的點擊。一般來說,建議您使用事件追蹤來追蹤下載、出站連結、PDF 或類似使用者互動。這是因為虛擬網頁瀏覽會計入總瀏覽量。

非同步程式碼片段

_gaq.push(['_trackPageview', '/downloads/pdfs/corporateBrief.pdf']);

返回開頭