Show Menu
主題×

區別參照相同連結 ID 和地區的連結

您可透過使用 s_objectID 變數自訂連結 ID、自訂地區,以及自訂 AppMeasurement ActivityMap 模組檔案,來區別連結。
舉例來說,假設您有多個「購買」連結,在 Activity Map 中以相同的連結 ID 和地區來識別:
程式碼範例 連結 ID 地區
<div id="recommendation panel">   <div>       <a href="product1.html">Buy</a>    </div>   <div>       <a href="product2.html">Buy</a>    </div>  <div>       <a href="product3.html">Buy</a>    </div>
Buy
Buy
Buy
recommendation Panel (建議面板)
recommendation Panel (建議面板)
recommendation Panel (建議面板)
應如何自訂網頁和標記,以區別這些連結的值呢?您有三個選擇: 自訂連結 ID、自訂地區,或是自訂 AppMeasurement ActivityMap 模組檔案。

使用 s_objectID 自訂連結 ID

透過為頁面上的連結或連結位置建立唯一的物件 ID,可改善 Activity Map 追蹤,或使用 Activity Map 來報告連結類型或位置,而不是連結 URL。如需 s_objectID 變數的詳細資訊,請按 此處
請注意,在 Activity Map 中使用 s_objectID 時,必須在結尾加上分號 (;)。
程式碼範例 連結 ID 地區
<div id="recommendation panel">   <div>       <a onClick="s_objectID='Product1';" href="product1.html">Buy</a>    </div>   <div>       <a onClick="s_objectID='Product2';" href="product2.html">Buy</a>    </div>  <div>       <a onClick="s_objectID='Product3';" href="product3.html">Buy</a>    </div>   
Product1
Product2
Product3
recommendation Panel (建議面板)
recommendation Panel (建議面板)
recommendation Panel (建議面板)

自訂地區

您可透過確定每個「購買」連結都定義自己的地區,來自訂地區。若要這麼做,請在每個 "Buy" 錨記的其中一個父項新增 "id" 參數。
並未嚴格限制一定要使用「id」參數做為地區識別碼。您也可以使用 JavaScript 變數 "s.ActivityMap.regionIDAttribute" 設定自己的識別碼。
程式碼範例 連結 ID 地區
<div id="recommendation panel">   <div id="region a">       <a href="product1.html">Buy</a>    </div>   <div id="region b">       <a href="product2.html">Buy</a>    </div>  <div id="region c">       <a href="product3.html">Buy</a>    </div>
Buy
Buy
Buy
region a
region b
region c

自訂 AppMeasurement ActivityMap 模組檔案

請務必測試修改後的代碼,確保代碼可以正常運作。Adobe 對修改後代碼的行為概不負責。
以下是一些您可加入 AppMeasurement.js 檔案的 一般 連結/地區函數範例 (修改形式)。
s.ActivityMap.link = function(ele,linkName){ 
if(linkName){ 
return linkName; 
} 
if(ele){ 
if(ele.tagName == 'A' && ele.href){ 
return ele.href; 
} 
} 
} 

linkName 是在呼叫 s.tl 時傳遞。
s.ActivityMap.region = function(ele){ 
var className, 
classNames = { 
'header': 1, 
'navbar': 1, 
'left-content': 1, 
'main-content': 1, 
'footer': 1, 
}; 
  while( (ele && (ele = ele.parentNode))){ 
if( (className=ele.className) && classNames[className]){ 
return className; 
} 
} 
return "BODY"; 
}