瀏覽器封鎖第三方 Cookie 時,此函數可讓您跨網域共用訪客的 Experience Cloud ID。若要使用此函數,您必須先實作 ID 服務,且擁有來源和目的地的網域。適用於 VisitorAPI.js 1.7.0 版或更新版本。
內容:
當用戶造訪您的網站,ID 服務會將第一方和第三方 Cookie 寫入瀏覽器 (請參閱 Cookie 與 Experience Cloud Identity Service)。第一方 Cookie 包含 MID,此為該訪客的唯一 ID。第三方 Cookie 包含 ID 服務用來產生 MID 的其他 ID。當瀏覽器封鎖此第三方 Cookie 時,ID 服務將無法:
為解決此問題,請實作 Visitor.appendVisitorIDsTo( *``*)
。此屬性可讓 ID 服務在多個網域間追蹤網站訪客,即使瀏覽器封鎖第三方 Cookie 亦然。其運作方式如下:
Visitor.appendVisitorIDsTo( *
url*)
會附加 MID 作為 URL 重新導向 (從原始網域重新導向至目的地網域) 中的查詢參數。如需詳細資訊,請參閱程式碼範例。
以下範例程式碼可幫助您開始使用 appendVisitorIDsTo
函數:
此程式碼可以放在自訂程式碼編輯器 (Adobe Analytics 擴充功能的一部分),或放在 AppMeasurement.js 的上方。
var adbeDomains = ["marketo.com", "figma.com", "workfront.com"];
var visitor = Visitor.getInstance("9E1005A551ED61CA0A490D45@AdobeOrg", {
trackingServer: "sstats.adobe.com",
trackingServerSecure: "sstats.adobe.com",
marketingCloudServer: "sstats.adobe.com",
marketingCloudServerSecure: "sstats.adobe.com"
});
adbeDomains.forEach(function(domain) {
var domainRegex = RegExp(domain);
if (!domainRegex.test(location.hostname)) {
hrefSelector = '[href*="' + domain + '"]';
document.querySelectorAll(hrefSelector).forEach(function(href) {
href.addEventListener('mousedown', function(event) {
var destinationURLWithVisitorIDs = visitor.appendVisitorIDsTo(event.currentTarget.href)
event.currentTarget.href = destinationURLWithVisitorIDs.replace(/MCAID%3D.*%7CMCORGID/, 'MCAID%3D%7CMCORGID');
});
});
}
});