使用標籤和Platform Web SDK擴充功能整合IAB TCF 2.0支援

Adobe Experience Platform Web SDK支援互動式廣告局透明與同意架構2.0版(IAB TCF 2.0)。 本指南會說明如何使用Adobe Experience Platform Web SDK標籤擴充功能,設定將IAB TCF 2.0同意資訊傳送至Adobe的標籤屬性。

若您不想使用標籤,請參閱上使用不含標籤之IAB TCF 2.0的指南。

快速入門

若要搭配標籤和Platform Web SDK擴充功能使用IAB TCF 2.0,您需要有可用的XDM結構和資料集。

此外,本指南也要求您妥善了解Adobe Experience Platform Web SDK。 如需快速重新整理,請參閱Adobe Experience Platform Web SDK概述常見問題檔案。

設定預設同意

擴充功能設定中有預設同意的設定。 這會控制沒有同意Cookie的客戶的行為。 如果您想要將體驗事件加入佇列,讓沒有同意Cookie的客戶使用,請將此項目設為pending。 如果您想要捨棄沒有同意Cookie的客戶的體驗事件,請將此項目設為out。 您也可以使用資料元素來動態設定預設同意值。

如需如何設定預設同意的詳細資訊,請參閱SDK設定指南中的預設同意區段

若要在客戶同意偏好設定變更時呼叫setConsent動作,您需要建立新的標籤規則。 首先,新增事件並選擇核心擴充功能的「自訂程式碼」事件類型。

對新事件使用下列程式碼範例:

// Wait for window.__tcfapi to be defined, then trigger when the customer has completed their consent and preferences.
function addEventListener() {
  if (window.__tcfapi) {
    window.__tcfapi("addEventListener", 2, function (tcData, success) {
      if (success && tcData.eventStatus === "useractioncomplete") {
        // save the tcData.tcString in a data element
        _satellite.setVar("IAB TCF Consent String", tcData.tcString);
        _satellite.setVar("IAB TCF Consent GDPR", tcData.gdprApplies);
        trigger();
      }
    });
  } else {
    // window.__tcfapi wasn't defined. Check again in 100 milliseconds
    setTimeout(addEventListener, 100);
  }
}
addEventListener();

此自訂程式碼有兩項功能:

  • 設定兩個資料元素,一個具有同意字串,另一個具有gdprApplies標幟。 稍後填寫「設定同意」動作時,這個功能會很實用。

  • 在同意偏好設定變更時觸發規則。 每當同意偏好設定變更時,應使用「設定同意」動作。 在擴充功能中新增「設定同意」動作,並填寫表單如下:

  • 標準:"IAB TCF"

  • 版本:"2.0"

  • 值:"%IAB TCF同意字串%"

  • GDPR適用:"%IAB TCF同意GDPR%"

IAB設定同意動作

重要

您無法使用資料元素選取器來選擇這些資料元素,因為這些資料元素是透過自訂程式碼建立。 您必須輸入含有百分比符號的資料元素名稱。 此程式碼會在客戶變更時,使用其新的同意偏好設定來更新其設定檔。 此外,伺服器會傳回Cookie值,使Adobe Experience Platform Web SDK無法記錄體驗事件。

為Experience Events建立XDM資料元素

XDM體驗事件中應包含同意字串。 若要這麼做,請使用XDM物件資料元素。 首先,請建立新的XDM物件資料元素,或使用您已建立的元素來傳送事件。 如果您已將「體驗事件隱私權」結構欄位群組新增至結構,XDM物件中應該會有consentStrings索引鍵。

  1. 選取​consentStrings

  2. 選擇​提供個別項目​並選擇​添加項目

  3. 展開​consentString​標題,然後展開第一個項目,然後填入下列值:

  • consentStandard:IAB TCF
  • consentStandardVersion:2.0
  • consentStringValue:%IAB TCF同意字串%
  • gdprApplies:%IAB TCF同意GDPR%
重要

您無法使用資料元素選取器來選擇這些資料元素,因為這些資料元素是透過自訂程式碼建立。 您必須輸入含有百分比符號的資料元素名稱。

傳送含有IAB TCF 2.0同意資訊的初始體驗事件

如果頁面上的初始體驗事件是由頁面載入事件觸發,則同意字串可能尚未載入。 此規則旨在取代您目前的頁面載入事件。 若要確認先載入同意資訊,請建立新規則,並將下列程式碼新增為自訂程式碼事件:

// Wait for window.__tcfapi to be defined, then trigger when there is a consent string
function addEventListener() {
  if (window.__tcfapi) {
    window.__tcfapi("addEventListener", 2, function (tcData, success) {
      if (success && (tcData.eventStatus === "useractioncomplete" || tcData.eventStatus === "tcloaded")) {
        // save the tcData.tcString in a data element
        _satellite.setVar("IAB TCF Consent String", tcData.tcString);
        _satellite.setVar("IAB TCF GDPR Applies", tcData.gdprApplies);
        trigger();
      }
    });
  } else {
    // window.__tcfapi wasn"t defined. Check again in 100 milliseconds
    setTimeout(addEventListener, 100);
  }
}
addEventListener();

此程式碼與先前的自訂程式碼相同,只是同時處理useractioncompletetcloaded事件。 先前的自訂程式碼只會在客戶首次選擇偏好設定時觸發。 當客戶已選擇偏好設定時,也會觸發此程式碼。 例如,在第二個頁面載入上。

從Platform Web SDK擴充功能新增「傳送事件」動作。 在「XDM」欄位中,選擇您在上一節中建立的XDM資料元素。

使用IAB TCF 2.0同意資訊傳送其他事件

當事件在初始體驗事件後觸發時,兩個資料元素仍會定義,且可用來傳送IAB同意資訊。 使用相同的XDM資料元素來傳送未來事件。 包含IAB TCF 2.0資訊。

後續步驟

現在您已了解如何搭配Platform Web SDK擴充功能使用IAB TCF 2.0,您也可以選擇與其他Adobe解決方案整合,例如Adobe Analytics或即時客戶資料平台。 如需詳細資訊,請參閱IAB透明與同意架構2.0概觀

本頁內容