Show Menu
主題×

Accelerated Mobile Pages

在 Adobe Analytics 實施 Accelerated Mobile Pages (AMP) 專案。
AMP 是一項 開放原始碼專案 ,可讓您建立快速轉譯靜態內容的網頁。這項功能相當適合發佈者使用,因為他們只需建立一次行動最佳化內容,即可在任何地方立即載入。包含主題:
其他文件及範本

運作方式

AMP 有特別標記的 HTML 頁面,儲存於網路各處包含參與的技術合作夥伴與供應商的不同內容傳遞網路 (CDN)。如此一來,AMP 內容就能從最近的可能來源以最少的潛在因素供應。這造成了分析的難題,因為您永遠不能 100% 確定發佈者的內容會從哪裡載入,而且第三方的小型文字檔案也會擾亂訪客識別。
此外,為求徹底減少頁面比重並加快頁面載入速度,AMP 限制 JavaScript 及小型文字檔案的使用。這就您的行動裝置來說是項優勢,因為可以減少處理量,但也由於不易精確測量出不重複訪客及瞭解贏取與保留使用者的情形,而造成難題。
為解決這些問題,Adobe 和 AMP 合作夥伴及發佈者在兩個選項上同心協力,兩個選項都使用 amp-analytics 標記,讓發佈者能從中選擇出最合乎其商業需求者。第一種方式是使用 "adobeanalytics" 追蹤範本,以便直接從 AMP 內建立 Analytics 要求。第二種方式是使用 "analytics_nativeConfig" 追蹤範本,這種方式會使用 iframe,其中包含您部署在一般網站上的 AppMeasurement 程式碼。以下表格提供參考,讓您能初步瞭解兩種方法各自的得失利弊。
「adobeanalytics」範本
「adobeanalytics_nativeConfig」範本
(在現有的報表套裝) 訪客或訪客計數
高度膨脹
最小膨脹
使用個別報告套裝
建議
非必要
全新 vs. 回頭的訪客
不支援
支援
訪客 ID 服務
不支援
支援
視訊與連結追蹤
部分支援
尚未支援
實施困難
有些困難
相對容易
Experience Cloud 整合
不支援
支援警告功能

使用有「adobeanalytics」範本的 amp-analytics 標記

"adobeanalytics" 追蹤範本利用 amp-analytics 標籤直接建立追蹤請求。若您在 amp-analytics 標籤中使用 "adobeanalytics" 範本,您可以明確指定出在特定頁面事件中的熱門請求,例如使頁面可見或者按一下就能開啟 (未來將可在播放視訊或其他模式中開啟頁面)。點擊事件可以量身打造,明確指定選取器,以適用於特定元素 ID 或等級。Adobe 使用專為 Adobe Analytics 量身打造的 "adobeanalytics" 範本,讓設定更容易。您可以將 type="adobeanalytics" 新增到 amp-analytics 標籤以載入範本。
在以下的程式碼範例中,有兩個已定義的觸發器: pageLoad click 。文件可見時, pageLoad 觸發器就會立即啟動,並包含 vars section 中定義的 pageName 變數。第二個觸發器 click 則會於按鈕點擊後立即啟動。將使用值 button clicked 設定 eVar 1 以用於此事件。
  <amp-analytics type="adobeanalytics"> 
  <script type="application/json"> 
  { 
        "requests": { 
      "myClick": "${click}&v1=${eVar1}", 
  }, 
  "vars": { 
      "host": "metrics.example.com", 
      "reportSuites": "reportSuiteID", 
      "pageName": "Adobe Analytics Using amp-analytics tag" 
  }, 
    "triggers": { 
      "pageLoad": { 
        "on": "visible", 
        "request": "pageView" 
      }, 
      "click": { 
        "on": "click", 
        "selector": "button", 
        "request": "myClick", 
        "vars": { 
          "eVar1": "button clicked" 
        } 
      } 
    } 
  } 
  </script> 
  </amp-analytics> 

click 觸發器中,您可以明確指定一個選取器,不論何時點擊特定 DOM 元素 (在此為任何按鈕), buttonClick 要求都會立即啟動,且會自動設定,將此點擊指稱為非階段事件 (即 trackLink 呼叫)。
此外, amp-analytics 也支援一些變數替代,讓 AMP 能提供已知的資料數值。您可以造訪 amp-analytics 變數文件 以獲得更多資訊。
請注意,若您想併入任何技術或 DOM 變數 (例如瀏覽器、螢幕大小、裝置、反向連結等等),您必須將要併入的項目明確新增致任何請求,否則請求不會自動產生。我們每個查詢串參數上用於追蹤的文件,都能在 此處 找到。
若您檢查 amp-analytics 所創建的點擊,您會注意到每個請求中都有 Adobe 納入的 vid 查詢參數。我們根據內建的 AMP 功能設定 vid ,以設定自訂的 Analytics 小型文字檔案 ID,命名為 adobe_amp_id 。該 ID 獨立於其他 Adobe Analytics 於他處設定的任何 ID (如 s_vi cookie ,並能於點擊所送至的任何報表套裝中創建新的訪客。
請注意以下警告。使用前述的 amp-analytics 標記時,訪客會獨立於您一般的追蹤,且由於 AMP 可以自任何內容傳遞網路載入,您在訪客所見 AMP 開啟的 CDN 上都會得到一位獨特訪客 (因此造成前述的訪客流量膨脹)。為了這個緣故,Adobe 建議,若您使用 "adobeanalytics" 範本來進行 amp-analytics ,您可以將資料放進 AMP 指定的個別報表套裝。此外,Experience Cloud ID 服務 (先前稱為 visitor ID service ) 並不支援此方式,因此若您的業務現在或將來需要額外的 Experience Cloud 整合,這種方式可能不適用於您的情形。
最後,也許也是最重要的一點,此 amp-analytics 解決方案要求您於 vars 區段中指定的追蹤伺服器符合您主要網站的追蹤伺服器,以便讓您現有的隱私權政策能執行。否則,您必須位 AMP 創建個別專用的隱私權政策。

使用有「adobeanalytics_nativeConfig」範本的 amp-analytics 標記。

"adobeanalytics_nativeConfig" 標籤讓實施變得更輕鬆,因為這種標籤使用與您在一般網頁上使用的標籤方式相同。要完成這點,請將以下項目新增至您的 amp-analytics 標記:
<amp-analytics type="adobeanalytics_nativeConfig"> 
 <script type="application/json"> 
 { 
  "requests": { 
   "base": "https://${host}", 
   "iframeMessage": "${base}/stats.html?campaign=${queryParam(campaign)}&pageURL=${ampdocUrl}&ref=${documentReferrer}" 
  }, 
  "vars": { 
   "host": "statshost.publishersite.com" 
  }, 
  "extraUrlParams": { 
   "pageName": "Adobe Analytics Using amp-analytics tag", 
   "v1": "eVar1 test value" 
  } 
 } 
 </script> 
</amp-analytics>  

此方式透過新增到 iframeMessage 的特別查詢字串參數,將資料傳送到通用網頁。在此情形,請注意我們已新增 ampdocUrl AMP 變數,以及導向 documentReferrer pageURL ,並分別導向上述請求的 iframeMessage 。您可以隨意命名這些額外的查詢字串參數,只要您的 stats.html 頁面 (如以下所示) 已設定,能從這些參數收集適當資料即可。
"adobeanalytics_nativeConfig" 範本也根據列於 amp-analytics 標記的 extraUrlParams 區段變數,新增查詢字串參數。在此情況下,您可以看見我們已指定 pageName v1 參數,這兩者將用於 stats.html 頁面。
請注意,您一次只能使用一個 amp-analytics 範本,並且不能使用相同 AMP 上的 "adobeanalytics" 範本以及 "adobeanalytics_nativeConfig" 範本。若您試圖這麼做,您會在瀏覽器控制台上看到錯誤,且您會錯誤膨脹您的訪客計數。
<html> 
<head> 
<title>Stats Test</title> 
<script language="JavaScript" type="text/javascript" src="VisitorAPI.js"></script> 
<script language="JavaScript" type="text/javascript" src="AppMeasurement.js"></script> 
<html> 
<head> 
<title>Stats Test</title> 
<script language="JavaScript" type="text/javascript" src="VisitorAPI.js"></script> 
<script language="JavaScript" type="text/javascript" src="AppMeasurement.js"></script> 
</head> 
<body> 
<script> 
var v_orgId = "1234567@PublisherOrg"; 
var s_account = "reportSuite"; 
var s_trackingServer = "metrics.publisher.com"; 
var s_visitorNamespace = "publisherNamespace"; 
var visitor = Visitor.getInstance(v_orgId); 
visitor.trackingServer = s_trackingServer; 
var s = s_gi(s_account); 
s.account = s_account; 
s.trackingServer = s_trackingServer; 
s.visitorNamespace = s_visitorNamespace; 
s.visitor = visitor; 
s.pagename = s.Util.getQueryParam("pageName"); 
s.eVar1=s.Util.getQueryParam("v1"); 
s.campaign=s.Util.getQueryParam("campaign"); 
s.pageURL=s.Util.getQueryParam("pageURL"); 
s.referrer=s.Util.getQueryParam("ref"); 
s.t(); 
</script> 
</body> 
</html> 

如上所示,您可以使用或連結至現有的 VisitorAPI.js 及 AppMeasurement.js (如範例),或任何您現有的實施用途,再新增正確的設定參數。若要將正確數值擷取進正確變數,您可以使用我們提供的 s.Util.getQueryParam 函數來抽出您從 iframeMessage URL 及設定好的適當參數中傳入的數值,這也和您在典型網頁上擷取數值的方式並無不同。If you use tag management software like Adobe's [Dynamic Tag Manager] , the query string parameters should be straightforward to capture. 在此情形下,會將 s.pageName 設定為已傳入 pageName 查詢字串參數的數值。在此,頁面名稱會設定為 Adobe Analytics Example 2 .
鑒於 AMP 架構中對 iframe 有所限制,您的 stats.html 頁面應託管於 AMP 本身託管網域的獨立子網域。AMP 架構不允許來自與 AMP 本身存在網域相同之子網域的 iframe。舉例說明,若您的 AMP 託管於 amp.example.com,請務必將您的 stats.html 頁面託管於一獨立子網域,如 ampmetrics.example.com 或類似者。
由於該公用程式網頁已託管於您原始網站,故不須額外步驟支援您在所有 AMP 上的現有隱私政策。若使用者選擇不追蹤您的原始網站,使用者也可以選擇不追蹤您所有的 AMP,且不需額外步驟。使用此公用程式頁面,即表示 AMP 可支援 Adobe 的 Experience Cloud ID 服務,如此一來您就能將從 AMP 擷取的測量與其他 Experience Cloud 服務 (針對目標廣告則以 Adobe Audience Manager 為例) 整合在一起。
若您的組織尚未使用 Experience Cloud ID 服務,(或有類似 Adobe Dynamic Tag Manager 的標記管理軟體),您可以藉由任意標記 stats.html 頁面來重複該步驟。請使用現有的實施作為參照點。與您標準的實施相較,唯一差異在於所有您想設定的變數都能從 iframeMessage URL 得到可用的資料點 (或從 document.URL 頁面內得到 stats.html)。若您想使用任何特定 AMP 變數 (如上所述),如AMP 反向連結或 AMP 頁面 URL,請將這些變數納入 iframeMessage 物件,如上例所示。
此解決方案雖有彈性,但仍有警告事項。由於 amp-analytics``iframeMessage 本身的限制,其僅能於每個頁面載入一次。這表示您將無法連結追蹤或視訊追蹤與 "adobeanalytics_nativeConfig" 範本。此外,有些由我們 AppMeasurement 程式碼自動擷取出的 DOM 數值,例如 referrer (這會影響搜尋引擎關鍵字報告、反向連結及反向連結類型報告,或可能包含行銷計畫追蹤代碼),不論使用什麼 iframeMessage 可用 的 AMP 變數,這些數值都須以手動方式傳入 。變數如此一來,標準技術報告,如瀏覽器、裝置、螢幕大小或解析度,都應自動運作。
最後,由於 iframe 以獨立頁面載入,並在頁面上完全執行 JavaScript,該 AMP 並不如 AMP 標準預期的輕量。進一步說明,此並不影響頁面載入時間,(iframe 會於頁面載入完畢後載入),但 CPU 及網路的工作量會略增,進而影響捲動頁面的流暢度。實務上,我們尚未發現較大的影響,但我們正與 Google 合作,設法減少此方式對使用者體驗

摘要

若您需要點擊追蹤功能,且不介意正在您的網站以外將訪客以全新訪客計算數目,請使用 "adobeanalytics" 追蹤範本,並按照我們的建議將資料放進 separate report suite 。若您需要 Experience Cloud ID 服務,不希望訪客或訪客流量膨脹,且不介意頁面載入僅啟動 Analytics,那麼推薦您使用 "adobeanalytics_nativeConfig" 解決方案。
Adobe Analytic 對於與 Google 及我們的發佈者合作興致勃勃,期待於行動網路將業界領先的分析功能帶給發佈者,提供超凡的高速使用者體驗。雖然這兩種解決方案目前已經上市,我們仍致力於建立最佳的長期解決方案,以回應客戶不斷改變的分析需求。
AMP 專案正快速演進且時常產生變更,所以請您經常於 此處 檢查範例的更新項目。我們於此說明的內容應足供您踏出第一步,但隨著我們進一步改善整合方式,以及採用 AMP 的發佈者人數增加,請期待我們將做出更多變更。
若您有問題或疑問,請聯繫您的 Adobe 顧問或客戶服務。

常見問題集

問題 回答
Is video tracking available for either the "adobeanalytics" or "adobeanalytics_nativeConfig" template?
非常抱歉,目前尚未提供。AMP 標準支援僅觸發「可見」、「按一下」及「計時器」功能,且尚不對可用 amp-analytics 標記聆聽的視訊追蹤支援直接觸發器。Also, because the "adobeanalytics_nativeConfig" tag can only be loaded once, it is not compatible with video viewing which occurs after the AMP has loaded.
你們在比較中提到 adobeanalytics_nativeConfig 「」範本的訪客數量膨脹較低。那是什麼意思? What would cause visitor inflation in either the "adobeanalytics" or the "adobeanalytics_nativeConfig" solution?
The "adobeanalytics" template does not allow Adobe Analytics to set a visitor identification cookie; this means all visits and visitors to your AMP page will be treated as a new and independent visit and visitor in your report suite.
The "adobeanalytics_nativeConfig" template, however, allows the Adobe Analytics visitor identification cookie to be set in nearly all cases, except for new visitors using the Safari browser. 這表示,Safari的任何先前未造訪過發行者網站的訪客,在Adobe Analytics報告中都會被誇大。
我是否該為 AMP 使用個別報表套裝?
若您使用 adobeanalytics 範本,基於訪客或造訪數量膨脹的問題,我們建議您為 AMP 使用個別報表套裝。然而,我們也會從 amp-analytics 範本將 JavaScript 的版本設定為 AMP vX.X,以讓您可以在必要時分隔出合併報表套裝中的流量區段。
什麼是 Experience Cloud ID 服務? 我需要這項服務嗎?
Identity 服務 (先前稱為 訪客 ID 服務 ) 可支援 Experience Cloud 核心服務,並可在不同的 Adobe Experience Cloud 解決方案之間進行整合。若您的整合項目中有 Adobe Audience Manager Adobe Target ,您就很可能使用此服務。此服務為許多即將上市的 Adobe Analytics 功能之基礎。若您現在或將來需要 ID 服務支援,建議您使用 iframeMessage 解決方案。
For the "adobeanalytics_nativeConfig" template, where should I host my utility page?
AMP 標準並不允許 iframe 自 AMP 本身的網域與子網域載入。若是如此,建議您將公用程式網頁託管於您的主網站以外的個別子網域,特別是貴公司有自己計畫快取 AMP 的 CDN 時,更應如此。要設定最大相容性,請選擇一個子網域,如 ampmetrics.publisher.com ,此子網域須與 AMP 內容實際放置之處不同。
這與 Facebook 即時文章 不是很像嗎 ? 我該如何設定用 Facebook 即時文章功能設定 Adobe Analytics ?
Facebook 即時文章支援的解決方案與以上概述的 nativeConfig 解決方案相似。事實上,以上創建的 stats.html 頁面可以同時滿足您對 AMP 及 FIA 的需求。想取得更多 在 FIA 上實施追蹤功能的資訊,請參見 Facebook 即時文章