Skapa anpassade händelser
Du kan utöka händelseplattformen genom att skapa egna butikshändelser för att samla in data som är unika för din bransch. När du skapar och konfigurerar en anpassad händelse skickas den till Adobe Commerce Events Collector.
Hantera anpassade händelser
Anpassade händelser stöds endast för Adobe Experience Platform. Anpassade data vidarebefordras inte till Adobe Commerce dashboards och metrics trackers.
För alla custom
-händelser, insamlaren:
- Lägger till
identityMap
medECID
som primär identitet - Inkluderar
email
iidentityMap
som en sekundär identitet ompersonalEmail.address
har angetts i händelsen - Omsluter den fullständiga händelsen i ett
xdm
-objekt innan den vidarebefordras till Edge
Exempel:
Anpassade event som publiceras via Adobe Commerce Events SDK:
mse.publish.custom({
commerce: {
saveForLaters: {
value: 1,
},
},
});
I Experience Platform Edge:
{
xdm: {
identityMap: {
ECID: [
{
id: 'ecid1234',
primary: true
}
],
email: [
{
id: "runs@safari.ke",
primary: false
}
]
},
commerce: {
saveForLaters: {
value: 1
}
}
}
}
Hantera händelseåsidosättningar (anpassade attribut)
För alla händelser som anges med customContext
åsidosätter eller utökar insamlaren fält i händelsens nyttolast från fälten i custom context
. Användbart för åsidosättningar är när en utvecklare vill återanvända och utöka kontexter som angetts av andra delar av sidan i händelser som redan stöds.
Händelseåsidosättningar gäller endast vid vidarebefordran till Experience Platform. De tillämpas inte på Adobe Commerce- och Sensei-analyshändelser. Adobe Commerce Events Collector README innehåller ytterligare information.
productListItems
med anpassade attribut i Experience Platform händelsenyttolaster ska du matcha produkter med SKU. Detta krav gäller inte för product-page-view
-händelser.Användning
const mse = window.magentoStorefrontEvents;
mse.publish.productPageView(customCtx);
Exempel 1
Det här exemplet lägger till anpassad kontext när händelsen publiceras.
magentoStorefrontEvents.publish.productPageView({
productListItems: [
{
productCategories: [
{
categoryID: "cat_15",
categoryName: "summer pants",
categoryPath: "pants/mens/summer",
},
],
},
],
});
Exempel 2
I det här exemplet läggs en anpassad kontext till innan händelsen publiceras.
const mse = window.magentoStorefrontEvents;
mse.context.setCustom({
productListItems: [
{
productCategories: [
{
categoryID: "cat_15",
categoryName: "summer pants",
categoryPath: "pants/mens/summer",
},
],
},
],
});
mse.publish.productPageView();
Exempel 3
I det här exemplet anges den anpassade kontexten i utgivaren och den anpassade kontext som tidigare angetts i Adobe Client Data Layer skrivs över.
I det här exemplet kommer händelsen pageView
att ha Eget sidnamn i fältet web.webPageDetails.name
.
const mse = window.magentoStorefrontEvents;
mse.context.setCustom({
web: {
webPageDetails: {
name: 'Custom Page Name 1'
},
},
});
mse.publish.pageView({
web: {
webPageDetails: {
name: 'Custom Page Name 2'
},
},
});
Exempel 4
I det här exemplet läggs anpassad kontext till i productListItems
-händelser med flera produkter.
const mse = window.magentoStorefrontEvents;
mse.context.setCustom({
productListItems: [
{
SKU: "24-WB01", //Match SKU to override correct product in event payload
productCategory: "Hand Bag", //Custom attribute added to event payload
name: "Strive Handbag (CustomName)" //Override existing attribute with custom value in event payload
},
{
SKU: "24-MB04",
productCategory: "Backpack Bag",
name: "Strive Backpack (CustomName)"
},
],
});
mse.publish.shoppingCartView();
Lumabaserade butiker:
Lumabaserade butiker implementerar publiceringshändelser internt, så du kan ange anpassade data genom att utöka customContext
.
Exempel:
mse.context.setCustom({
web: {
webPageDetails: {
name: 'Custom Page Name'
},
},
});