onBeforeLinkClickSend
filterClickDetails
in plaats daarvan.De onBeforeLinkClickSend
Met callback kunt u een JavaScript-functie registreren die de gegevens voor het bijhouden van koppelingen die u verzendt, kan wijzigen voordat de gegevens naar de Adobe worden verzonden. Met deze callback kunt u de xdm
of data
-object, inclusief de mogelijkheid om elementen toe te voegen, te bewerken of te verwijderen. U kunt het verzenden van gegevens ook voorwaardelijk annuleren, zoals met ontdekt cliënt-zijbot verkeer. Deze functie wordt ondersteund op Web SDK 2.15.0 of hoger.
Deze callback loopt slechts wanneer clickCollectionEnabled
is ingeschakeld en filterClickDetails
bevat geen geregistreerde functie. Indien clickCollectionEnabled
is uitgeschakeld of als filterClickDetails
bevat een geregistreerde functie, dan wordt deze callback niet uitgevoerd. Indien onBeforeEventSend
en onBeforeLinkClickSend
beide geregistreerde functies bevatten, onBeforeLinkClickSend
wordt eerst uitgevoerd.
Vorm vóór verbinding klikken verzend callback gebruikend de de markeringsuitbreiding van SDK van het Web tag-extension
Selecteer de Provide on before link click event send callback code knop wanneer configureren van de tagextensie. Met deze knop opent u een modaal venster waarin u de gewenste code kunt invoegen.
- Aanmelden bij experience.adobe.com je Adobe ID-gebruikersgegevens gebruiken.
- Ga naar Data Collection > Tags.
- Selecteer de gewenste eigenschap tag.
- Navigeren naar Extensions en klik vervolgens op Configure op de Adobe Experience Platform Web SDK kaart.
- Omlaag schuiven naar de Data Collection en selecteert u vervolgens het selectievakje Enable click data collection.
- Selecteer de knop met het label Provide on before link click event send callback code.
- Met deze knop opent u een modaal venster met een code-editor. Voeg de gewenste code in en klik vervolgens op Save om het modale venster te sluiten.
- Klikken Save publiceert u de wijzigingen onder extensie-instellingen.
In de code-editor hebt u toegang tot de volgende variabelen:
content.clickedElement
: Het DOM-element waarop is geklikt.content.xdm
: De XDM-lading voor de gebeurtenis.content.data
: De payload van het gegevensobject voor de gebeurtenis.return true
: Sluit de callback onmiddellijk af met de huidige variabelewaarden. DeonBeforeEventSend
callback wordt uitgevoerd als het een geregistreerde functie bevat.return false
: Sluit de callback onmiddellijk af en sluit het verzenden van gegevens naar de Adobe af. DeonBeforeEventSend
callback wordt niet uitgevoerd.
Willekeurige variabelen die buiten content
kunnen worden gebruikt, maar worden niet opgenomen in de lading die naar de Adobe wordt verzonden.
// Set an already existing value to something else
content.xdm.web.webPageDetails.URL = "https://example.com/current.html";
// Use nullish coalescing assignments to create objects if they don't yet exist, preventing undefined errors.
// Can be omitted if you are certain that the object is already defined
content.xdm._experience ??= {};
content.xdm._experience.analytics ??= {};
content.xdm._experience.analytics.customDimensions ??= {};
content.xdm._experience.analytics.customDimensions.eVars ??= {};
// Then set the property to the clicked element
content.xdm._experience.analytics.customDimensions.eVars.eVar1 = content.clickedElement;
// Use optional chaining to check if each object is defined, preventing undefined errors
if(content.xdm.web?.webInteraction?.type === "other") content.xdm.web.webInteraction.type = "download";
Op dezelfde manier als onBeforeEventSend
, kunt u return true
om de functie onmiddellijk te voltooien, of return false
om het verzenden van gegevens naar de Adobe te annuleren. Als u het verzenden van gegevens afbreekt in onBeforeLinkClickSend
wanneer beide onBeforeEventSend
en onBeforeLinkClickSend
bevat geregistreerde functies, de onBeforeEventSend
functie wordt niet uitgevoerd.
Configureer op voordat de koppeling klikt en stuur callback met behulp van de Web SDK JavaScript-bibliotheek library
Registreer de onBeforeLinkClickSend
callback wanneer de configure
gebruiken. U kunt de content
de naam van een variabele in een willekeurige waarde door de parametervariabele binnen de inline functie te wijzigen.
alloy("configure", {
edgeConfigId: "ebebf826-a01f-4458-8cec-ef61de241c93",
orgId: "ADB3LETTERSANDNUMBERS@AdobeOrg",
onBeforeLinkClickSend: function(content) {
// Add, modify, or delete values
content.xdm.web.webPageDetails.URL = "https://example.com/current.html";
// Return true to complete the function immediately
if (sendImmediate == true) {
return true;
}
// Return false to cancel sending data immediately
if(myBotDetector.isABot()){
return false;
}
}
});
U kunt ook uw eigen functie registreren in plaats van een inline functie.
function lastChanceLinkLogic(content) {
content.xdm.application ??= {};
content.xdm.application.name = "App name";
}
alloy("configure", {
edgeConfigId: "ebebf826-a01f-4458-8cec-ef61de241c93",
orgId: "ADB3LETTERSANDNUMBERS@AdobeOrg",
onBeforeLinkClickSend: lastChanceLinkLogic
});