[整合]{class="badge positive"}

整合AEM Sites和Adobe Analytics

瞭解如何使用Adobe Client Data Layer的內建功能搭配AEM Sites核心元件,將AEM和Adobe Analytics與Adobe Analytics標籤擴充功能整合,以收集Adobe Experience Manager Sites中頁面的相關資料。 Experience Platform🔗中的標籤和Adobe Analytics擴充功能是用來建立規則,以將頁面資料傳送至Adobe Analytics。

您即將建置的內容 what-build

頁面資料追蹤

在本教學課程中,您將根據Adobe使用者端資料層中的事件觸發標籤規則。 此外,請為應該引發規則的時間新增條件,然後將AEM頁面的​ 頁面名稱 ​和​ 頁面範本 ​值傳送至Adobe Analytics。

目標 objective

  1. 在標籤屬性中建立事件導向規則,以擷取資料層的變更
  2. 將頁面資料層屬性對應至標籤屬性中的資料元素
  3. 使用頁面檢視信標收集頁面資料並傳送至Adobe Analytics

先決條件

需要下列專案:

NOTE
需要整合標籤屬性和AEM網站的協助嗎? 觀看此影片系列

切換WKND網站的標籤環境

WKND是面向公眾的網站,建置基礎為開放原始碼專案,設計為AEM實作的參考和教學課程

您不必設定AEM環境及安裝WKND程式碼基底,而是可以使用Experience Platform偵錯工具將即時的WKND網站切換​ 至​ 您的 標籤屬性。 ​不過,如果您的AEM網站已啟用Adobe使用者端資料層,您就可以使用該網站。

  1. 登入Experience Platform並建立Tag屬性 (如果尚未建立)。

  2. 確定已建立初始標籤JavaScript 資料庫並提升至標籤環境

  3. 從已發佈程式庫的目的地標籤環境中複製JavaScript內嵌程式碼。

    複製標籤屬性內嵌程式碼

  4. 在您的瀏覽器中,開啟新索引標籤並導覽至WKND網站

  5. 開啟Experience Platform Debugger瀏覽器擴充功能

    Experience Platform偵錯工具

  6. 導覽至​ Experience Platform標籤 > 組態,並在​ 插入的內嵌程式碼 ​下以從步驟3複製的​ 您的 ​內嵌程式碼取代現有的內嵌程式碼。

    取代內嵌程式碼

  7. 在WKND索引標籤上啟用​ 主控台記錄 ​和​ 鎖定 ​偵錯工具。

    主控台記錄

驗證WKND網站上的Adobe使用者端資料層

WKND參考專案是以AEM核心元件建置的,預設已啟用Adobe使用者端資料層。 接下來,確認Adobe使用者端資料層已啟用。

  1. 導覽至WKND網站

  2. 開啟瀏覽器的開發人員工具,並導覽至​ 主控台。 執行以下命令:

    code language-js
    adobeDataLayer.getState();
    

    上述程式碼會傳回Adobe使用者端資料層的目前狀態。

    Adobe資料層狀態

  3. 展開回應並檢查page專案。 您應該會看到類似以下的資料結構:

    code language-json
    page-2eee4f8914:
        @type: "wknd/components/page"
        dc:description: WKND is a collective of outdoors, music, crafts, adventure sports, and travel enthusiasts that want to share our experiences, connections, and expertise with the world.
        dc:title: "WKND Adventures and Travel"
        repo:modifyDate: "2020-08-31T21:02:21Z"
        repo:path: "/content/wknd/us/en.html"
        xdm:language: "en-US"
        xdm:tags: ["Attract"]
        xdm:template: "/conf/wknd/settings/wcm/templates/landing-page-template"
    

    若要將頁面資料傳送至Adobe Analytics,請使用資料層的dc:titlexdm:languagexdm:template等標準屬性。

    如需詳細資訊,請參閱核心元件資料結構描述中的頁面結構描述

    note note
    NOTE
    如果您沒有看到adobeDataLayer JavaScript物件? 確定已在您的網站上啟用Adobe使用者端資料層

建立頁面載入規則

Adobe使用者端資料層是​ 事件導向 ​資料層。 載入AEM Page資料層時,會觸發cmp:show事件。 建立從頁面資料層觸發cmp:show事件時觸發的規則。

  1. 導覽至Experience Platform並進入與AEM網站整合的標籤屬性。

  2. 導覽至標籤屬性UI中的​ 規則 ​區段,然後按一下​ 建立新規則

    建立規則

  3. 將規則​ 頁面載入名稱

  4. 在​ 事件 ​子區段中,按一下​ 新增 ​以開啟​ 事件設定 ​精靈。

  5. 針對​ 事件型別 ​欄位,選取​ 自訂程式碼

    為規則命名並新增自訂程式碼事件

  6. 按一下主面板中的​ 開啟編輯器,然後輸入下列程式碼片段:

    code language-js
    var pageShownEventHandler = function(evt) {
       // defensive coding to avoid a null pointer exception
       if(evt.hasOwnProperty("eventInfo") && evt.eventInfo.hasOwnProperty("path")) {
          //trigger the Tag Rule and pass event
          console.log("cmp:show event: " + evt.eventInfo.path);
          var event = {
             //include the path of the component that triggered the event
             path: evt.eventInfo.path,
             //get the state of the component that triggered the event
             component: window.adobeDataLayer.getState(evt.eventInfo.path)
          };
    
          //Trigger the Tag Rule, passing in the new `event` object
          // the `event` obj can now be referenced by the reserved name `event` by other Tag data elements
          // i.e `event.component['someKey']`
          trigger(event);
       }
    }
    
    //set the namespace to avoid a potential race condition
    window.adobeDataLayer = window.adobeDataLayer || [];
    //push the event listener for cmp:show into the data layer
    window.adobeDataLayer.push(function (dl) {
       //add event listener for `cmp:show` and callback to the `pageShownEventHandler` function
       dl.addEventListener("cmp:show", pageShownEventHandler);
    });
    

    上述程式碼片段透過將函式推入資料層,以新增事件接聽程式。 觸發cmp:show事件時,會呼叫pageShownEventHandler函式。 在此函式中,已新增一些健全性檢查,而且已使用觸發事件的元件之資料層🔗的最新狀態建構新的event

    最後呼叫trigger(event)函式。 trigger()函式是標籤屬性中的保留名稱,它會​ 觸發規則event物件傳遞為引數,而該引數又由標籤屬性中的另一個保留名稱公開。 標籤屬性中的資料元素現在可以使用程式碼片段(例如event.component['someKey'])來參考各種屬性。

  7. 儲存變更。

  8. 接下來,在​ 動作 ​底下,按一下​ 新增 ​以開啟​ 動作組態 ​精靈。

  9. 對於​ 動作型別 ​欄位,請選擇​ 自訂程式碼

    自訂程式碼動作型別

  10. 按一下主面板中的​ 開啟編輯器,然後輸入下列程式碼片段:

    code language-js
    console.log("Page Loaded ");
    console.log("Page name: " + event.component['dc:title']);
    console.log("Page type: " + event.component['@type']);
    console.log("Page template: " + event.component['xdm:template']);
    

    event物件是從自訂事件中呼叫的trigger()方法傳遞。 在此,component是從自訂事件中的資料層getState衍生的目前頁面。

  11. 儲存變更並在標籤屬性中執行組建,以將程式碼提升至您AEM網站上使用的環境

    note note
    NOTE
    使用Adobe Experience Platform Debugger將內嵌程式碼切換至​ 開發 ​環境可能很有用。
  12. 導覽至您的AEM網站,然後開啟開發人員工具以檢視主控台。 重新整理頁面,您應該會看到主控台訊息已記錄:

頁面載入的主控台訊息

建立資料元素

接著,建立數個資料元素,從Adobe使用者端資料層擷取不同的值。 如同上一個練習所示,您可以直接透過自訂程式碼存取資料層的屬性。 使用資料元素的優點在於它們可以在標籤規則中重複使用。

資料元素對應至@typedc:titlexdm:template屬性。

元件資源型別

  1. 導覽至Experience Platform並進入與AEM網站整合的標籤屬性。

  2. 導覽至​ 資料元素 ​區段,然後按一下​ 建立新資料元素

  3. 在​ Name ​欄位中,輸入​ 元件資源型別

  4. 對於​ 資料元素型別 ​欄位,請選取​ 自訂程式碼

    元件資源型別

  5. 按一下​ 開啟編輯器 ​按鈕,然後在自訂程式碼編輯器中輸入下列內容:

    code language-js
    if(event && event.component && event.component.hasOwnProperty('@type')) {
        return event.component['@type'];
    }
    
  6. 儲存變更。

    note note
    NOTE
    回想一下,已根據在標籤屬性中觸發​ 規則 ​的事件,提供event物件並設定範圍。 在規則中的資料元素為​ referenced ​之前,不會設定資料元素的值。 因此,在上一個步驟​ 中建立的​ Page Loaded ​規則之類的規則內使用此資料元素是安全的,但 ​在其他內容中使用此資料元素是不安全的。

頁面名稱

  1. 按一下​ 新增資料元素 ​按鈕

  2. 在​ 名稱 ​欄位中,輸入​ 頁面名稱

  3. 對於​ 資料元素型別 ​欄位,請選取​ 自訂程式碼

  4. 按一下​ 開啟編輯器 ​按鈕,然後在自訂程式碼編輯器中輸入下列內容:

    code language-js
    if(event && event.component && event.component.hasOwnProperty('dc:title')) {
        return event.component['dc:title'];
    }
    
  5. 儲存變更。

頁面範本

  1. 按一下​ 新增資料元素 ​按鈕

  2. 在​ Name ​欄位中,輸入​ 頁面範本

  3. 對於​ 資料元素型別 ​欄位,請選取​ 自訂程式碼

  4. 按一下​ 開啟編輯器 ​按鈕,然後在自訂程式碼編輯器中輸入下列內容:

    code language-js
    if(event && event.component && event.component.hasOwnProperty('xdm:template')) {
        return event.component['xdm:template'];
    }
    
  5. 儲存變更。

  6. 規則中現在應該包含三個資料元素:

    規則 中的資料元素

新增Analytics擴充功能

接下來,將Analytics擴充功能新增至您的標籤屬性,以將資料傳送至報表套裝。

  1. 導覽至Experience Platform並進入與AEM網站整合的標籤屬性。

  2. 移至​ 擴充功能 > 目錄

  3. 找到​ Adobe Analytics ​擴充功能並按一下​ 安裝

    Adobe Analytics擴充功能

  4. 在​ 資料庫管理 > 報表套裝 ​底下,輸入您要用於每個標籤環境的報表套裝ID。

    輸入報表套裝ID

    note note
    NOTE
    在本教學課程中,您可針對所有環境使用同一個報表套裝,但在現實情況中,您需使用個別的報表套裝(如下圖所示)
    note tip
    TIP
    我們建議使用​*「為我管理資料庫」選項*​作為「資料庫管理」設定,因為這樣可更輕鬆地使AppMeasurement.js資料庫保持最新狀態。
  5. 核取方塊以啟用​ 使用Activity Map

    啟用使用Activity Map

  6. 在​ 一般 > 追蹤伺服器 ​底下,輸入您的追蹤伺服器,例如tmd.sc.omtrdc.net。 如果您的網站支援https://,請輸入SSL追蹤伺服器

    輸入追蹤伺服器

  7. 按一下[儲存]儲存變更。

將條件新增至頁面載入規則

接下來,更新​ Page Loaded ​規則以使用​ 元件資源型別 ​資料元素,以確保該規則僅在cmp:show事件是​ Page ​時引發。 其他元件可以引發cmp:show事件,例如,輪播元件會在幻燈片變更時引發。 因此,請務必為此規則新增條件。

  1. 在標籤屬性UI中,導覽至先前建立的​ 頁面已載入 ​規則。

  2. 在​ 條件 ​下,按一下​ 新增 ​以開啟​ 條件組態 ​精靈。

  3. 對於​ 條件型別 ​欄位,請選取​ 值比較 ​選項。

  4. 將表單欄位中的第一個值設為%Component Resource Type%。 您可以使用資料元素圖示 資料元素圖示 來選取​ 元件資源型別 ​資料元素。 將比較器保留設定為Equals

  5. 將第二個值設為wknd/components/page

    頁面載入規則的 條件設定

    note note
    NOTE
    您可以在自訂程式碼函式中新增此條件,該函式會監聽教學課程中先前建立的cmp:show事件。 不過,將其新增至UI可讓可能需要變更規則的其他使用者更清楚瞭解。 此外,我們還能使用資料元素!
  6. 儲存變更。

設定Analytics變數並觸發頁面檢視信標

目前​ 頁面已載入 ​規則只會輸出主控台陳述式。 接下來,使用這些資料元素和Analytics擴充功能,將Analytics變數設定為​ 頁面已載入 ​規則中的​ 動作。 我們也設定了額外的動作以觸發​ 頁面檢視信標,並將收集的資料傳送至Adobe Analytics。

  1. 在頁面載入規則中,移除 核心 — 自訂程式碼 ​動作(主控台陳述式):

    移除自訂程式碼動作

  2. 在[動作]子區段下,按一下[新增] ​以新增動作。

  3. 將​ 擴充功能 ​型別設定為​ Adobe Analytics,並將​ 動作型別 ​設定為​ 設定變數

    將動作延伸設為Analytics設定變數

  4. 在主面板中,選取可用的​ eVar,並設定為資料元素​ 頁面範本 ​的值。 使用資料元素圖示 資料元素圖示 來選取​ 頁面範本 ​元素。

    設定為eVar頁面範本

  5. 向下捲動,在​ 其他設定 ​下,將​ 頁面名稱 ​設定為資料元素​ 頁面名稱

    頁面名稱環境變數集

  6. 儲存變更。

  7. 接下來,點選​ 加上 ​圖示,在​ Adobe Analytics — 設定變數 ​的右側新增一個額外動作:

    新增其他標籤規則動作

  8. 將​ 擴充功能 ​型別設定為​ Adobe Analytics,並將​ 動作型別 ​設定為​ 傳送信標。 由於此動作被視為頁面檢視,請將預設追蹤設定為​ s.t()

    傳送Beacon Adobe Analytics動作

  9. 儲存變更。 頁面已載入 ​規則現在應具有下列設定:

    最終標籤規則組態

    • 1。 ​接聽cmp:show事件。
    • 2。 ​檢查事件是否由頁面觸發。
    • 3。 ​設定​ 頁面名稱 ​和​ 頁面範本 ​的Analytics變數
    • 4。 ​傳送Analytics頁面檢視點標
  10. 儲存所有變更並建置您的標籤程式庫,升級至適當的環境。

驗證頁面檢視信標和Analytics呼叫

現在​ 頁面已載入 ​規則已傳送Analytics信標,您應該能夠使用Experience Platform偵錯工具檢視Analytics追蹤變數。

  1. 在瀏覽器中開啟WKND網站

  2. 按一下Debugger圖示 Experience Platform Debugger圖示 以開啟Experience PlatformDebugger。

  3. 如先前所述,確定Debugger將標籤屬性對應到​ 您的 ​開發環境,並檢查​ 主控台記錄

  4. 開啟Analytics功能表,並確認報表套裝已設為​ 您的 ​報表套裝。 頁面名稱也應填入:

    Analytics索引標籤偵錯工具

  5. 向下捲動並展開​ 網路要求。 您應該能夠找到​ 頁面範本 ​設定的​ evar

    Evar和頁面名稱集

  6. 返回瀏覽器並開啟開發人員主控台。 按一下頁面頂端的​ 輪播

    點進轉盤頁面

  7. 在瀏覽器主控台中觀察主控台陳述式:

    條件不符合

    這是因為轉盤確實觸發cmp:show事件​ ,但由於我們檢查​ 元件資源型別,因此未引發任何事件

    note note
    NOTE
    如果您沒有看到任何主控台記錄,請確定已在Experience Platform偵錯工具的​ Experience Platform標籤 ​下檢查​ 主控台記錄
  8. 導覽至文章頁面,例如西澳洲。 觀察該頁面名稱和範本型別的變更。

恭喜!

您剛才在Experience Platform中使用事件導向的Adobe使用者端資料層和標籤,從AEM Site收集資料頁面資料並將其傳送到Adobe Analytics。

後續步驟

請參閱下列教學課程,瞭解如何使用事件導向的Adobe使用者端資料層,以追蹤Adobe Experience Manager網站上特定元件的點按次數。

recommendation-more-help
bb44cebf-d964-4e3c-b64e-ce882243fe4d