Erfassen von Commerce-Daten mithilfe von Adobe Experience Platform Tags
Sie können die Data Connection-Erweiterung zwar verwenden, um Storefront-Ereignisse zu veröffentlichen und zu abonnieren, einige Händler verwenden jedoch möglicherweise bereits eine Datenerfassungslösung, z. B. die Adobe Experience Platform-Tags. Für diese Händler bietet Adobe Commerce in der Data Connection-Erweiterung eine Veröffentlichungsoption, die die Adobe Commerce Event SDK verwendet.
Datenfluss
Datenfluss der Data Connectionmit Tags
In diesem Abschnitt erfahren Sie, wie Sie die von der Data Connection bereitgestellten Storefront-Ereigniswerte der bereits verwendeten Adobe Experience Platform Tags-Lösung zuordnen.
Erfassen von Ereignisdaten aus Adobe Commerce
So erfassen Sie Commerce-Ereignisdaten:
-
Installieren Sie Adobe Commerce Events SDK. Informationen zu PHP-Storefronts finden Sie unter install-Thema. Informationen zu PWA Studio-Storefronts finden Sie im PWA Studio-Handbuch.
note note NOTE nichtkonfigurieren die Organisations-ID und die Datenstrom-ID.
Zuordnen von Commerce-Storefront-Daten zu Adobe Experience Platform
Um Daten einer Commerce-Storefront Adobe Experience Platform zuzuordnen, konfigurieren und installieren Sie Folgendes in Adobe Experience Platform Tags:
-
Richten Sie eine Tag-Eigenschaft der Datenerfassung in Adobe Experience Platform ein.
-
Wählen unter die Option Erweiterungen aus und installieren und konfigurieren Sie die folgenden Erweiterungen:
-
Tag veröffentlichen in Ihrer Entwicklungsumgebung.
-
Gehen Sie wie folgt vor um Datenelemente und Regeln für bestimmte Ereignisse zu konfigurieren.
Ereignis-Mapping
Da sich die Datenerfassung mithilfe von Tags von der Verwendung der Adobe Commerce Event SDK unterscheidet, ist es wichtig, die in beiden Frameworks verwendeten entsprechenden Begriffe zu verstehen.
Regelaktionen - Ereignis-Handler (an Adobe Experience Platform senden)
Wenn Sie die Datenelemente und Regeln in Adobe Experience Platform Tags mit Adobe Commerce-spezifischen Ereignisdaten aktualisieren, werden Sie einige allgemeine Schritte ausführen.
Fügen wir beispielsweise das Adobe Commerce-signOut-Ereignis zu Adobe Experience Platform-Tags hinzu. Die folgenden Schritte beschreiben mit Ausnahme der von Ihnen festgelegten spezifischen Werte, wie Datenelemente und Regeln hinzugefügt werden. Diese gelten für alle Adobe Commerce-Ereignisse, die Sie Tags hinzufügen.
-
Erstellen Sie ein Datenelement:
Neues Datenelement erstellen -
Legen Sie Name auf
sign outfest. -
Legen Erweiterung auf
Adobe Experience Platform Web SDKfest. -
Setzen Datenelementtyp auf
XDM object. -
Wählen Sie die Sandbox und Schema aus, die Sie aktualisieren möchten.
-
Legen unter > abmelden den Wert in Besucher-Abmeldung auf
1fest.
Abmeldewert aktualisieren -
Wählen Sie Speichern aus.
-
Erstellen Sie eine Regel:
Neue Regel erstellen -
Wählen Hinzufügen unter EREIGNISSE aus.
-
Legen Erweiterung auf
Adobe Client Data Layerfest. -
Legen Sie Ereignistyp auf
Data Pushedfest. -
Wählen Sie Spezifisches Ereignis aus und setzen Sie den Ereignis/Schlüssel für die Registrierung auf
sign-out. -
Wählen Änderungen beibehalten, um die neue Regel zu speichern.
-
Fügen Sie eine Aktion hinzu.
-
Legen Erweiterung auf
Adobe Experience Platform Web SDKfest. -
Legen Sie Aktionstyp auf
Send Eventfest. -
Legen Sie instance auf
Alloyfest. -
Legen Sie type auf
userAccount.logoutfest. -
Legen Sie XDM-Daten auf
%sign out%fest. -
Klicken Sie Speichern.
Sie haben ein Datenelement in Ihrem Schema für das
signOutvon Adobe Commerce erstellt. Außerdem haben Sie eine Regel mit einer bestimmten Aktion erstellt, die auftreten soll, wenn dieses Ereignis in der Adobe Commerce-Storefront ausgelöst wird.
Wiederholen Sie die obigen Schritte in Tags für jedes der unten beschriebenen Adobe Commerce-Ereignisse.
Verfügbare Ereignisse
Ordnen Sie die Adobe Commerce-Ereignisse jedem der folgenden Ereignisse Ihrem XDM zu, indem Sie die oben genannten Schritte ausführen.
Abmelden
Wird ausgelöst, wenn ein Käufer versucht, sich abzumelden.
Datenelemente
Erstellen Sie das folgende Datenelement:
-
Abmelden:
- Name:
Sign out - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
userAccount>logout - Besucher-Abmeldung: Wert =
1
- Name:
Regeln
- Name:
Sign out - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
sign-out
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
userAccount.logout - XDM-Daten:
%sign-out%
Anmelden
Wird ausgelöst, wenn ein Käufer versucht, sich anzumelden.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Konto-E-Mail:
- Name:
account email - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.emailAddress
- Name:
-
Kontotyp:
- Name:
account type - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.accountType
- Name:
-
Konto-ID:
- Name:
account id - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path*:
accountContext.accountId
- Name:
-
Anmelden:
- Name:
sign in - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
person>accountID - Konto-ID: Wert =
%account id% - Feldergruppe:
person>accountType - Kontotyp: value =
%account type% - Feldergruppe:
person>personalEmailID - Persönliche E-Mail: Wert =
%account email% - Feldergruppe:
personalEmail>address - Adresse: Wert =
%account email% - Feldergruppe:
userAccount>login - Besucheranmeldung: Wert =
1
- Name:
Regeln
- Name:
sign in - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
sign-in
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
userAccount.login - XDM-Daten:
%sign in%
createAccount
Wird ausgelöst, wenn ein Käufer versucht, ein Konto zu erstellen.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Konto-E-Mail:
- Name:
account email - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.emailAddress
- Name:
-
Kontotyp:
- Name:
account type - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.accountType
- Name:
-
Konto-ID:
- Name:
account id - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.accountId
- Name:
-
Konto erstellen:
- Name:
Create account - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
person>accountID - Konto-ID: Wert =
%account id% - Feldergruppe:
person>accountType - Kontotyp: value =
%account type% - Feldergruppe:
person>personalEmailID - Persönliche E-Mail: Wert =
%account email% - Feldergruppe:
personalEmail>address - Adresse: Wert =
%account email% - Feldergruppe:
userAccount>createProfile - Kontoprofil erstellen: Wert =
1
- Name:
Regeln
- Name:
Create account - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
create-account
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
userAccount.createProfile - XDM-Daten:
%create account%
Konto bearbeiten
Wird ausgelöst, wenn ein Käufer versucht, ein Konto zu bearbeiten.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Konto-E-Mail:
- Name:
account email - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.emailAddress
- Name:
-
Kontotyp:
- Name:
account type - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.accountType
- Name:
-
Konto-ID:
- Name:
account id - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.accountId
- Name:
-
Konto bearbeiten:
- Name:
Edit account - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
person>accountID - Konto-ID: Wert =
%account id% - Feldergruppe:
person>accountType - Kontotyp: value =
%account type% - Feldergruppe:
person>personalEmailID - Persönliche E-Mail: Wert =
%account email% - Feldergruppe:
personalEmail>address - Adresse: Wert =
%account email% - Feldergruppe:
userAccount>updateProfile - Kontoprofil erstellen: Wert =
1
- Name:
Regeln
- Name:
Edit account - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
edit-account
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
userAccount.updateProfile - XDM-Daten:
%edit account%
pageView
Wird ausgelöst, wenn eine beliebige Seite geladen wird.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Seitenname:
- Name:
page name - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
pageContext.pageName
- Name:
Regeln
- Name:
page view - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
page-view
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
web.webPageDetails.pageViews - XDM-Daten:
%page view%
productView
Wird ausgelöst, wenn eine Produktseite geladen wird.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Produktname:
- Name:
product name - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.name
- Name:
-
Produkt-SKU:
- Name:
product sku - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.sku
- Name:
-
Produktbild-URL:
- Name:
product image - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.mainImageUrl
- Name:
-
Währung des Produkts:
- Name:
product currency - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.currencyCode
- Name:
-
Währungscode:
- Name:
currency code - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('product currency') || _satellite.getVar('storefront').storeViewCurrencyCode - Name:
-
Sonderpreis:
- Name:
special price - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.specialPrice
- Name:
-
Regulärer Preis:
- Name:
regular price - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.regularPrice
- Name:
-
Produktpreis:
- Name:
product price - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('product regular price') || _satellite.getVar('product special price') - Name:
-
Produktansicht:
- Name:
product view - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
productListItems. Wählen Einzelne Elemente angeben und klicken Sie auf die Schaltfläche Element hinzufügen. Da es sich bei dieser Ansicht um eine PDP handelt, können Sie sie mit einem einzelnen Element füllen. - Feldergruppe:
productListItems>name - name: value =
%product name% - Feldergruppe:
productListItems>SKU - SKU: value =
%product sku% - Feldergruppe:
productListItems>priceTotal - Gesamtpreis: Wert =
%product price% - Feldergruppe:
productListItems>currencyCode - Währungscode: Wert =
%currency code% - Feldergruppe:
productListItems>ProductImageUrl - ProductImageUrl: value =
%product image% - Feldergruppe:
commerce>productViews>value - value: value =
1
- Name:
Regeln
- Name:
product view - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
product-page-view
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.productViews - XDM-Daten:
%product view%
searchRequestSent
Ausgelöst durch Ereignisse im Pop-up „Suche während der Eingabe“ und durch Ereignisse auf Suchergebnisseiten.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Eingabe suchen
- Name:
search input - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
searchInputContext.units[0]
- Name:
-
Eingabephrase suchen
- Name:
search input phrase - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('search input').phrase; - Name:
-
Eingabesortierung suchen
- Name:
search input sort - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const searchInput = _satellite.getVar('search input'); const sortFromInput = searchInput ? searchInput.sort : []; const sort = sortFromInput.map((searchSort) => { return { attribute: searchSort.attribute, order: searchSort.direction, }; }); return sort; - Name:
-
Eingabefilter suchen
- Name:
search input filters - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const searchInput = _satellite.getVar('search input'); const filtersFromInput = searchInput ? searchInput.filter : []; const filters = filtersFromInput.map( (searchFilter) => { let value = []; let isRange = false; if (searchFilter.eq) { value.push(searchFilter.eq); } else if (searchFilter.in) { value = searchFilter.in; } else if (searchFilter.range) { isRange = true; value.push(String(searchFilter.range.from)); value.push(String(searchFilter.range.to)); } return { attribute: searchFilter.attribute, value, isRange, }; } ); return filters; - Name:
-
Suchanfrage:
- Name:
search request - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
siteSearch>phrase - value: Noch nicht verfügbar
- Feldergruppe:
siteSearch>sort. Wählen Sie Gesamtes Objekt bereitstellen aus. - Feldergruppe:
siteSearch>filter. Wählen Sie Gesamtes Objekt bereitstellen aus. - Feldergruppe:
searchRequest>id - Eindeutige Kennung: Wert =
%search request ID% - Feldergruppe:
searchRequest>value - value: value =
1
- Name:
Regeln
- Name:
search request sent - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
search-request-sent
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
searchRequest - XDM-Daten:
%search request%
searchResponseReceived
Wird ausgelöst, wenn die Live-Suche Ergebnisse für das Pop-up „Suche während der Eingabe“ oder die Suchergebnisseite zurückgibt.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Suchergebnisse:
- Name:
search results - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
searchResultsContext.units[0]
- Name:
-
Anzahl der Produkte im Suchergebnis:
- Name:
search result number of products - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('search result').products.length; - Name:
-
Produkte für Suchergebnisse:
- Name:
search result products - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const searchResult = _satellite.getVar('search result'); const productsFromResult = searchResult.products ? searchResult.products : []; const products = productsFromResult.map( (product) => { return { SKU: product.sku, name: product.name }; } ); return products; - Name:
-
Vorschläge für Suchergebnisse:
- Name:
search result products - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const searchResult = _satellite.getVar('search result'); const suggestionsFromResult = searchResult.suggestions ? searchResult.suggestions : []; const suggestions = suggestionsFromResult.map((suggestion) => suggestion.suggestion); return suggestions; - Name:
-
Produktbild-URL:
- Name:
product image - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.mainImageUrl
- Name:
-
Suchantwort:
- Name:
search response - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
siteSearch>suggestions. Wählen Sie Gesamtes Objekt bereitstellen aus. - Datenelement:
%search result suggestions% - Feldergruppe:
siteSearch>numberOfResults - value:
%search result number of products% - Feldergruppe:
productListItems. Wählen Sie Gesamtes Objekt bereitstellen aus. - Feldergruppe:
productListItems>ProductImageUrl - ProductImageUrl: value =
%product image% - Datenelement:
%search result products% - Feldergruppe:
searchResponse>id - Eindeutige Kennung: Wert =
%search response ID% - Feldergruppe:
searchResponse>value - value: value =
1
- Name:
Regeln
- Name:
search response received - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
search-response-received
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
searchResponse - XDM-Daten:
%search response%
addToCart
Wird ausgelöst, wenn ein Produkt zum Warenkorb hinzugefügt wird oder jedes Mal, wenn die Menge eines Produkts im Warenkorb erhöht wird.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Produktname:
- Name:
product name - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.name
- Name:
-
Produkt-SKU:
- Name:
product sku - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.sku
- Name:
-
Währungscode:
- Name:
currency code - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.currencyCode
- Name:
-
Sonderpreis für das Produkt:
- Name:
product special price - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.specialPrice
- Name:
-
Produktbild-URL:
- Name:
product image - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.mainImageUrl
- Name:
-
Regulärer Produktpreis:
- Name:
product regular price - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.regularPrice
- Name:
-
Produkt Preis:
- Name:
product price - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('product regular price') || _satellite.getVar('product special price') - Name:
-
Warenkorb:
- Name:
cart - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
shoppingCartContext
- Name:
-
Warenkorb-ID:
- Name:
cart id - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('cart').id - Name:
-
Zum Warenkorb hinzufügen:
- Name:
add to cart - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
productListItems. Wählen Einzelne Elemente angeben und klicken Sie auf die Schaltfläche Element hinzufügen. Da es sich bei dieser Ansicht um eine PDP handelt, können Sie sie mit einem einzelnen Element füllen. - Feldergruppe:
productListItems>name - name: value =
%product name% - Feldergruppe:
productListItems>SKU - SKU: value =
%product sku% - Feldergruppe:
productListItems>priceTotal - Gesamtpreis: Wert =
%product price% - Feldergruppe:
productListItems>currencyCode - Feldergruppe:
productListItems>ProductImageUrl - ProductImageUrl: value =
%product image% - Währungscode: Wert =
%currency code% - Feldergruppe:
commerce>cart>cartID - Warenkorb-ID: Wert =
%cart id% - Feldergruppe:
commerce>productListAdds>value - value: value =
1
- Name:
Regeln
- Name:
add to cart - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
add-to-cart
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.productListAdds - XDM-Daten:
%add to cart%
openCart
Wird ausgelöst, wenn ein neuer Warenkorb erstellt wird, was passiert, wenn ein Produkt zu einem leeren Warenkorb hinzugefügt wird.
Datenelemente
Erstellen Sie das folgende Datenelement:
-
Warenkorb öffnen:
- Name:
open cart - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
commerce>productListOpens>value - value: value =
1 - Feldergruppe:
commerce>cart>cartID - Warenkorb-ID: Wert =
%cart id% - Feldergruppe:
productListItems.productListItemskönnen mehrere Elemente vorab berechnet werden. Wählen Sie productListItems > Gesamtes Array bereitstellen aus.
- Name:
Regeln
- Name:
open cart - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
open-cart
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.productListOpens - XDM-Daten:
%open cart%
Warenkorb anzeigen
Wird ausgelöst, wenn eine beliebige Warenkorbseite geladen wird.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Storefront:
- Name:
storefront - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
storefrontInstanceContext
- Name:
-
Produktbild-URL:
- Name:
product image - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.mainImageUrl
- Warenkorb:
- Name:
cart - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
shoppingCartContext
- Name:
-
Warenkorb-ID:
- Name:
cart id - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('cart').id - Name:
-
Elemente der Produktliste:
- Name:
product list items: - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const storefrontContext = _satellite.getVar('storefront'); const cart = _satellite.getVar('cart'); const returnList = []; cart.items.forEach(item => { const selectedOptions = []; item.configurableOptions?.forEach(option => { selectedOptions.push({ attribute: option.optionLabel, value: option.valueLabel, }); }); const productListItem = { SKU: item.product.sku, name: item.product.name, quantity: item.quantity, priceTotal: item.prices.price.value * item.quantity, currencyCode: item.prices.price.currency ? item.prices.price.currency : storefrontContext.storeViewCurrencyCode, selectedOptions: selectedOptions, }; returnList.push(productListItem); }); return returnList; - Name:
-
Warenkorb anzeigen:
- Name:
view cart - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
productListItems.productListItemskann es mehrere Elemente geben, die vorberechnet werden. Wählen Sie productListItems > Gesamtes Array füllen aus. - Datenelement:
%product list items% - Feldergruppe:
productListItems>ProductImageUrl - ProductImageUrl: value =
%product image% - Feldergruppe:
commerce>cart>cartID - Warenkorb-ID: Wert =
%cart id% - Feldergruppe:
commerce>productListViews>value - value: value =
1
- Name:
Regeln
- Name:
view cart - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
shopping-cart-view
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.productListViews - XDM-Daten:
%view cart%
removeFromCart
Wird ausgelöst, wenn ein Produkt aus einem Warenkorb entfernt wird oder jedes Mal, wenn die Menge eines Produkts im Warenkorb verringert wird.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Produktname:
- Name:
product name - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.name
- Name:
-
Produkt-SKU:
- Name:
product sku - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.sku
- Name:
-
Währungscode:
- Name:
currency code - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.currencyCode
- Name:
-
Sonderpreis für das Produkt:
- Name:
product special price - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.specialPrice
- Name:
-
Regulärer Produktpreis:
- Name:
product regular price - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.pricing.regularPrice
- Name:
-
Produkt Preis:
- Name:
product price - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('product regular price') || _satellite.getVar('product special price') - Name:
-
Warenkorb:
- Name:
cart - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
shoppingCartContext
- Name:
-
Warenkorb-ID:
- Name:
cart id - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('cart').id - Name:
-
Aus dem Warenkorb entfernen:
- Name:
remove from cart - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
productListItems. Wählen Einzelne Elemente angeben und klicken Sie auf die Schaltfläche Element hinzufügen. Da es sich bei dieser Ansicht um eine PDP handelt, können Sie sie mit einem einzelnen Element füllen. - Feldergruppe:
productListItems>name - name: value =
%product name% - Feldergruppe:
productListItems>SKU - SKU: value =
%product sku% - Feldergruppe:
productListItems>priceTotal - Gesamtpreis: Wert =
%product price% - Feldergruppe:
productListItems>currencyCode - Währungscode: Wert =
%currency code% - Feldergruppe:
commerce>cart>cartID - Warenkorb-ID: Wert =
%cart id% - Feldergruppe:
commerce>productListRemovals>value - value: value =
1
- Name:
Regeln
- Name:
remove from cart - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
remove-from-cart
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.productListRemovals - XDM-Daten:
%remove from cart%
initiateCheckout
Wird ausgelöst, wenn der Käufer auf eine Checkout-Schaltfläche klickt.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Storefront:
- Name:
storefront - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
storefrontInstanceContext
- Name:
-
Produktbild-URL:
- Name:
product image - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.mainImageUrl
- Name:
-
Warenkorb:
- Name:
cart - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
shoppingCartContext
- Name:
-
Warenkorb-ID:
- Name:
cart id - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('cart').id - Name:
-
Elemente der Produktliste:
- Name:
product list items - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const storefrontContext = _satellite.getVar('storefront'); const cart = _satellite.getVar('cart'); const returnList = []; cart.items.forEach(item => { const selectedOptions = []; item.configurableOptions?.forEach(option => { selectedOptions.push({ attribute: option.optionLabel, value: option.valueLabel, }); }); const productListItem = { SKU: item.product.sku, name: item.product.name, quantity: item.quantity, priceTotal: item.prices.price.value * item.quantity, currencyCode: item.prices.price.currency ? item.prices.price.currency : storefrontContext.storeViewCurrencyCode, selectedOptions: selectedOptions, }; returnList.push(productListItem); }); return returnList; - Name:
-
Checkout starten:
- Name:
initiate checkout - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
productListItems.productListItemskann es mehrere Elemente geben, die vorberechnet werden. Wählen Sie productListItems > Gesamtes Array füllen aus. - Datenelement:
%product list items% - Feldergruppe:
productListItems>ProductImageUrl - ProductImageUrl: value =
%product image% - Feldergruppe:
commerce>cart>cartID - Warenkorb-ID: Wert =
%cart id% - Feldergruppe:
commerce>checkouts>value - value: value =
1
- Name:
Regeln
- Name:
initiate checkout - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
initiate-checkout
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.checkouts - XDM-Daten:
%initiate checkout%
placeOrder
Wird ausgelöst, wenn der Käufer eine Bestellung aufgibt.
Datenelemente
Erstellen Sie die folgenden Datenelemente:
-
Konto-E-Mail:
- Name:
account email - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
accountContext.emailAddress
- Name:
-
Storefront:
- Name:
storefront - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
storefrontInstanceContext
- Name:
-
Produktbild-URL:
- Name:
product image - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
productContext.mainImageUrl
- Name:
-
Warenkorb:
- Name:
cart - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
shoppingCartContext
- Name:
-
Warenkorb-ID:
- Name:
cart id - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('cart').id - Name:
-
Bestellung:
- Name:
order - Erweiterung:
Adobe Client Data Layer - Datenelementtyp:
Data Layer Computed State - [Optional] path:
orderContext
- Name:
-
Commerce-Bestellung:
- Name:
commerce order - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const order = _satellite.getVar('order'); const storefront = _satellite.getVar('storefront'); if (order.payments && order.payments.length) { payments = order.payments.map(payment => { return { paymentAmount: payment.total, paymentType: payment.paymentMethodCode, transactionID: order.orderId.toString(), }; }); } else { payments = [ { paymentAmount: order.grandTotal, paymentType: order.paymentMethodCode, transactionID: order.orderId.toString(), }, ]; } return { purchaseID: order.orderId.toString(), currencyCode: storefront.storeViewCurrencyCode, payments, }; - Name:
-
Bestellversand:
- Name:
order shipping - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const order = _satellite.getVar('order'); return { shippingMethod: order.shipping.shippingMethod, shippingAmount: order.shipping.shippingAmount || 0, } - Name:
-
Promotion-ID:
- Name:
promotion id - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash return _satellite.getVar('order').appliedCouponCode - Name:
-
Elemente der Produktliste:
- Name:
product list items - Erweiterung:
Core - Datenelementtyp:
Custom Code - Editor öffnen:
code language-bash const storefrontContext = _satellite.getVar('storefront'); const cart = _satellite.getVar('cart'); const returnList = []; cart.items.forEach(item => { const selectedOptions = []; item.configurableOptions?.forEach(option => { selectedOptions.push({ attribute: option.optionLabel, value: option.valueLabel, }); }); const productListItem = { SKU: item.product.sku, name: item.product.name, quantity: item.quantity, priceTotal: item.prices.price.value * item.quantity, currencyCode: item.prices.price.currency ? item.prices.price.currency : storefrontContext.storeViewCurrencyCode, selectedOptions: selectedOptions, }; returnList.push(productListItem); }); return returnList; - Name:
-
Bestellung aufgeben
- Name:
place order - Erweiterung:
Adobe Experience Platform Web SDK - Datenelementtyp:
XDM object - Feldergruppe:
productListItems.productListItemskann es mehrere Elemente geben, die vorberechnet werden. Wählen Sie productListItems > Gesamtes Array füllen aus. - Datenelement:
%product list items% - Feldergruppe:
productListItems>ProductImageUrl - ProductImageUrl: value =
%product image% - Feldergruppe:
commerce>order - Eindeutige Kennung: Wert =
%commerce order% - Feldergruppe:
commerce>shipping - Eindeutige Kennung: Wert =
%order shipping% - Feldergruppe:
commerce>promotionID - Promotion-ID: value =
%promotion id% - Feldergruppe:
commerce>purchases>value - value: value =
1 - Persönliche E-Mail: Wert =
%account email% - Feldergruppe:
personalEmail>address - Adresse: Wert =
%account email%
- Name:
Regeln
- Name:
place order - Erweiterung:
Adobe Client Data Layer - Ereignistyp:
Data Pushed - Spezifisches Ereignis:
place-order
Aktionen
- Erweiterung:
Adobe Experience Platform Web SDK - Aktionstyp:
Send event - Typ:
commerce.order - XDM-Daten:
%place order%
Festlegen der Identität in Storefront-Ereignissen
Storefront-Ereignisse enthalten Profilinformationen, die auf den Feldern personalEmail (für Kontoereignisse) und identityMap (für alle anderen Storefront-Ereignisse) basieren. Die Data Connection-Erweiterung verknüpft und generiert Profile, die auf diesen beiden Feldern basieren. Für jedes Feld sind jedoch verschiedene Schritte zum Erstellen von Profilen erforderlich:
personalEmail- Gilt nur für Kontoereignisse. Führen Sie die oben beschriebenen Schritte, Regeln und ausidentityMap- Gilt für alle anderen Storefront-Ereignisse. Siehe folgendes Beispiel.
Beispiel
Die folgenden Schritte zeigen, wie Sie ein pageView-Ereignis mit identityMap in Data Connection Erweiterung konfigurieren:
-
Konfigurieren des Datenelements mit benutzerdefiniertem Code für ECID:
Konfigurieren des Datenelements mit benutzerdefiniertem Code -
Wählen Sie Open Editor aus und fügen Sie den folgenden benutzerdefinierten Code hinzu:
code language-javascript return alloy("getIdentity").then((result) => { var identityMap = { ECID: [ { id: ecid, primary: true } ], email: [ { id: email, primary: false } ] }; _satelite.setVar("identityMap", identityMap); }); -
Aktualisieren Sie das XDM-Schema mit
identityMapals ECID:
identityMap als ECID festlegen -
Definieren Sie Regelaktionen, die ECID abrufen:
ECID abrufen
Festlegen der Identität in Back-Office-Ereignissen
Im Gegensatz zu Storefront-Ereignissen, die ECID verwenden, um Profilinformationen zu identifizieren und zu verknüpfen, sind Backoffice-Ereignisdaten SaaS-basiert und daher ist keine ECID verfügbar. Bei Back-Office-Ereignissen müssen Sie E-Mails verwenden, um Käufer eindeutig zu identifizieren. In diesem Abschnitt erfahren Sie, wie Sie Backoffice-Ereignisdaten per E-Mail mit einer ECID verknüpfen.
-
Erstellen Sie ein Identitätszuordnungselement.
Back-Office-Identitätszuordnung erstellen -
Wählen Sie Open Editor aus und fügen Sie den folgenden benutzerdefinierten Code hinzu:
const IdentityMap = {
"ECID": [
{
id: _satellite.getVar('ECID'),
primary: true,
},
],
};
if (_satellite.getVar('account email')) {
IdentityMap.email = [
{
id: _satellite.getVar('account email'),
primary: false,
},
];
}
return IdentityMap;
-
Fügen Sie jedes
identityMapFeld dieses neue Element hinzu.
Aktualisieren jeder identityMap
Einverständnis wird festgelegt
Wenn Sie die Data Connection-Erweiterung in Adobe Commerce installieren, ist das Einverständnis zur Datenerfassung standardmäßig aktiviert. Das Opt-out wird über das mg_dnt-Cookie verwaltet. Sie können die hier beschriebenen Schritte ausführen, wenn Sie mg_dnt zur Einverständnisverwaltung verwenden. Die Dokumentation zu Adobe Experience Platform Web SDK bietet mehrere zusätzliche Optionen zum Verwalten des Einverständnisses.
-
Erstellen Sie ein Core Custom Code-Datenelement (
%do not track cookie%) für dasmg_dntCookie:
Erstellen verfolgt kein Datenelement -
Erstellen Sie ein Core Custom Code-Datenelement (
%consent%), dasoutzurückgibt, wenn das Cookie gesetzt ist, und andernfallsin:
Einverständnisdatenelement erstellen -
Konfigurieren der Adobe Experience Platform Web SDK-Erweiterung mit
%consent%Datenelement:
Aktualisieren von SDK mit Einverständnis
Warnungen
- Wenn Sie zum Deaktivieren der Experience Platform-Erfassung keine Schritte ausführen, werden Ereignisse doppelt gezählt
- Das Nicht-Einrichten von Zuordnungen/Ereignissen wie in diesem Thema beschrieben kann Auswirkungen auf Adobe Analytics Boards haben
- Sie können Target nicht über die Data Connection-Erweiterung einrichten, wenn die Datenerfassung deaktiviert ist