ActivityMap.link
Mit der Variable ActivityMap.link
können Sie die Logik überschreiben, die Activity Map zum Festlegen von Link-Werten verwendet. Diese Variable ist nützlich in Bereichen, in denen Sie mehr Kontrolle haben möchten als von ActivityMap.linkExclusions
bereitgestellt wird.
Linkwerte mithilfe des Web SDK überschreiben
Sie können den Rückruf OnBeforeLinkClickSend
verwenden, um die Web SDK-Payload zu ändern oder das Senden von Daten abzubrechen.
Linküberschreibungen mit der Adobe Analytics-Erweiterung
In der Adobe Analytics-Erweiterung gibt es kein eigenes Feld, um diese Variable zu verwenden. Verwenden Sie den Editor für benutzerdefinierten Code entsprechend der AppMeasurement-Syntax.
ActivityMap.link in AppMeasurement und im benutzerdefinierten Code-Editor der Analytics-Erweiterung
Weisen Sie dieser Variablen eine Funktion zu, die:
- empfängt das angeklickte HTML-Element und
- Gibt einen Zeichenfolgenwert zurück. Dieser Zeichenfolgenwert ist der endgültige Wert, der für die Dimension Activity Map-Link verwendet wird.
Wenn der Rückgabewert falsy ist, werden alle Activity Map-Kontextdatenvariablen gelöscht und es werden keine Linkdaten verfolgt.
Beispiele
Verwenden Sie nur das Titelattribut von <a>
-Tags. Wenn das Titelattribut nicht vorhanden ist, wird kein Link verfolgt.
s.ActivityMap.link = function(clickedElement) {
var linkId;
if (clickedElement && clickedElement.tagName.toUpperCase() === 'A') {
linkId = clickedElement.getAttribute('title');
}
return linkId;
}
Geben Sie den manuell festgelegten Link-Namen in s.tl
zurück, falls er vorhanden ist. Andernfalls wird die Link-URL zurückgegeben.
s.ActivityMap.link = function(ele, linkName) {
if (linkName) {
return linkName;
}
if (ele && ele.tagName == 'A' && ele.href) {
return ele.href;
}
}
Anstatt die standardmäßige Link-Logik vollständig zu ersetzen, können Sie sie bedingt ändern.
<script>
// Copy the original link function
var originalLinkFunction = s.ActivityMap.link;
// Return the link name from s.tl, a modified activity map value, or the original activity map value
s.ActivityMap.link = function(element,linkName)
{
return linkName || customFunction(element) || originalLinkFunction(element,linkName);
};
</script>
<button type="button" onclick="s.tl(this,'o',customFunction(this)">Add To Cart</button>
- Wenn
linkName
übergeben wird, wurde die Methode vontl()
aufgerufen. Gibt zurück, wastl()
alslinkName
übergeben hat. - Wenn von Activity Map aufgerufen wird, wird nie ein
linkName
übergeben. Rufen Sie dahercustomFunction()
mit dem Link-Element auf. Sie können jede benutzerdefinierte Funktion verwenden, die Sie als Wert zurückgeben möchten. - Wenn keiner der oben genannten Rückgabewerte auftritt, verwenden Sie den Link-Namen, der normalerweise als Fallback erfasst wird.