使用Adobe Target和Web SDK進行個人化
Adobe Experience Platform Web SDK可以傳送並轉譯在Adobe Target中管理的個人化體驗至Web Channel。 您可以使用稱為視覺化體驗撰寫器 (VEC)的WYSIWYG編輯器,或是非視覺化介面表單式體驗撰寫器,來建立、啟用及傳遞您的活動和個人化體驗。
下列功能已經過測試,目前在Target中支援:
Web SDK系統圖表
下圖可協助您瞭解Target和Web SDK邊緣決策的工作流程。
b。作為使用者在單頁應用程式(SPA)中的動作結果而針對檢視顯示的個人化內容會快取,以便在觸發檢視時立刻套用,不需額外的伺服器呼叫。
c。Edge Network會傳送訪客ID和Cookie中的其他值,例如同意、工作階段ID、身分、Cookie檢查、個人化。
正在啟用Adobe Target
若要啟用Target,請執行下列動作:
- 使用適當的使用者端代碼啟用資料流中的Target。
- 將
renderDecisions
選項新增至您的事件。
然後,您也可選擇新增下列選項:
decisionScopes
:將此選項新增至您的事件,以擷取特定活動(適用於使用表單式撰寫器建立的活動)。- 預先隱藏程式碼片段:只隱藏頁面的某些部分。
使用Adobe Target VEC
若要搭配Web SDK實作使用VEC,請安裝並啟動Firefox或Chrome VEC Helper擴充功能。
如需詳細資訊,請參閱 Adobe Target指南 中的視覺化體驗撰寫器Helper擴充功能。
呈現個人化內容
如需詳細資訊,請參閱呈現個人化內容。
XDM中的受眾
為透過Web SDK傳遞的Target活動定義對象時,必須定義並使用XDM。 定義XDM結構描述、類別和結構描述欄位群組後,您可以建立由XDM資料定義的Target對象規則以用於目標定位。 在Target內,XDM資料會在對象產生器中顯示為自訂引數。 XDM是使用點標籤法序列化(例如,web.webPageDetails.name
)。
如果您有Target個活動,其中包含使用自訂引數或使用者設定檔的預先定義對象,則無法透過SDK正確傳送這些對象。 您必須改用XDM,而不是使用自訂引數或使用者設定檔。 不過,有透過Web SDK支援的現成受眾目標定位欄位不需要XDM。 這些欄位可在Target UI中使用,不需要XDM:
- Target資料庫
- 地理
- 網路
- 作業系統
- 網頁
- 瀏覽器
- 流量來源
- 時間段
如需詳細資訊,請參閱 Adobe Target指南 中的對象類別。
回應Token
回應Token可用來傳送中繼資料給第三方,例如Google或Facebook。 傳回回應Token
在propositions
-> items
內的meta
欄位中。 範例如下:
{
"id": "AT:eyJhY3Rpdml0eUlkIjoiMTI2NzM2IiwiZXhwZXJpZW5jZUlkIjoiMCJ9",
"scope": "__view__",
"scopeDetails": ...,
"renderAttempted": true,
"items": [
{
"id": "0",
"schema": "https://ns.adobe.com/personalization/dom-action",
"meta": {
"experience.id": "0",
"activity.id": "126736",
"offer.name": "Default Content",
"offer.id": "0"
}
}
]
}
若要收集回應Token,您必須訂閱alloy.sendEvent
Promise、透過propositions
反複運算,並從items
-> meta
擷取詳細資料。
每個proposition
都有一個renderAttempted
布林值欄位,指出proposition
是否已轉譯。 請參閱下列範例:
alloy("sendEvent",
{
"renderDecisions": true,
"decisionScopes": [
"hero-container"
]
}).then(result => {
const { propositions } = result;
// filter rendered propositions
const renderedPropositions = propositions.filter(proposition => proposition.renderAttempted === true);
// collect the item metadata that represents the response tokens
const collectMetaData = (items) => {
return items.filter(item => item.meta !== undefined).map(item => item.meta);
}
const pageLoadResponseTokens = renderedPropositions
.map(proposition => collectMetaData(proposition.items))
.filter(e => e.length > 0)
.flatMap(e => e);
});
啟用自動轉譯時,主張陣列包含:
在頁面載入時:
- 以
renderAttempted
旗標設為false
的表單式撰寫器式propositions
- 以
renderAttempted
旗標設為true
的視覺化體驗撰寫器型建議 - 單一頁面應用程式檢視的視覺化體驗撰寫器式主張,其中
renderAttempted
旗標設為true
檢視上 — 變更(針對快取檢視):
- 單一頁面應用程式檢視的視覺化體驗撰寫器式主張,其中
renderAttempted
旗標設為true
停用自動轉譯時,主張陣列包含:
在頁面載入時:
- 以Form-based Composer為基礎的
propositions
,renderAttempted
旗標設為false
- Visual Experience Composer個以
renderAttempted
旗標設為false
的主張 - 單一頁面應用程式檢視以Visual Experience Composer為基礎的主張,其中
renderAttempted
旗標設為false
檢視上 — 變更(針對快取檢視):
- 單一頁面應用程式檢視的視覺化體驗撰寫器式主張,其中
renderAttempted
旗標設為false
單一設定檔更新
Web SDK可讓您將設定檔更新為Target設定檔,並更新為Web SDK做為體驗事件。
若要更新Target設定檔,請確定設定檔資料是以下列方式傳遞:
- 在
"data {"
下 - 在
"__adobe.target"
下 - 前置詞
"profile."
renderDecisions
decisionScopes
<String>
xdm
data
延遲儲存設定檔或實體引數,直到內容顯示給一般使用者
若要將設定檔中的錄製屬性延遲到內容顯示為止,請在您的要求中設定data.adobe.target._save=false
。
例如,您的網站包含三個決定範圍,分別對應至網站上的三個類別連結(「男性、女性和兒童」),而您想要追蹤使用者最後造訪的類別。 傳送這些請求,並將__save
旗標設為false
,以避免在請求內容時保留類別。 內容視覺化之後,針對要記錄的對應屬性,傳送適當的裝載(包括eventToken
和stateToken
)。
以下範例會傳送trackEvent樣式訊息、執行設定檔指令碼、儲存屬性,並立即記錄事件。
alloy("sendEvent", {
"renderDecisions": true,
"xdm": { /* Experience Event XDM data */ },
"data": {
"__adobe": {
"target": {
" __save": true|false,
//defaults to true if omitted
"profile.gender": "female",
"profile.age": 30,
"entity.name": "T-shirt",
"entity.id": "1234"
}
}
}
})
__save
指示詞,則會立即儲存設定檔和實體屬性。 __save
指示詞僅與設定檔屬性和實體詳細資料相關。要求建議
下表列出Recommendations屬性,以及是否透過Web SDK支援每個屬性:
如何將Recommendations屬性傳送至Adobe Target:
alloy("sendEvent", {
"renderDecisions": true,
"data": {
"__adobe": {
"target": {
"entity.id": "123",
"entity.genre": "Drama"
}
}
}
});
顯示mbox轉換量度 display-mbox-conversion-metrics
以下範例說明如何追蹤顯示mbox轉換並傳送設定檔引數至Adobe Target,而不需要符合任何內容或活動的資格。
alloy("sendEvent", {
"xdm": {
"_experience": {
"decisioning": {
"propositions": [{
"scope": "conversion-step-1" //example scope name
}],
"propositionEventType": {
"display": 1
}
}
},
"eventType": "decisioning.propositionDisplay"
}
});
xdm._experience.decisioning.propositions[x].scope
xdm._experience.decisioning.propositions[x].eventType
"decisioning.propositionDisplay"
。偵錯
已棄用mboxTrace和mboxDebug。 請改用Web SDK偵錯的方法。
術語
主張: 在Adobe Target中,主張與從活動選取的體驗相關。
結構描述: 決定的結構描述是Adobe Target中的優惠型別。
範圍: 決定的範圍。 在Adobe Target中,範圍是mBox。 全域mBox是__view__
範圍。
XDM: XDM已序列化為點標籤法,然後以mBox引數的形式放入Adobe Target中。