$wsAccount
In diesem Abschnitt werden die verfügbaren Variablen und Methoden des $wsAccount Moduls beschrieben, mit denen Sie Account- und Adressdaten dynamisch im Frontend verwenden können.
Kundendaten bilden die Grundlage für eine personalisierte Nutzererfahrung im Shop. Sie ermöglichen es, wichtige Informationen wie die Adressdaten und das Kundenprofil des eingeloggten Benutzers abzurufen und im Kundenkonto übersichtlich darzustellen. In diesem Abschnitt erfahren Sie, wie Sie auf die Daten eines Kundenkontos zugreifen und diese dynamisch im Frontend anzeigen können.
Inhaltsverzeichnis
- 1 Modulübersicht
- 2 Templates
- 3 Variablen
- 3.1 $wsAccount.email
- 3.2 $wsAccount.id
- 3.3 $wsAccount.displayName
- 3.4 $wsAccount.isLoggedIn
- 3.5 $wsAccount.isAutoLoggedIn
- 3.6 $wsAccount.isAutoLogInRestricted
- 3.7 $wsAccount.autoLogInRestriction
- 3.8 $wsAccount.lastLogin
- 3.9 $wsAccount.isPasswordResetRequired
- 3.10 $wsAccount.isAccountVerified
- 3.11 $wsAccount.customerData
- 3.12 $wsAccount.addressFields
- 3.13 $wsAccount.backInStockList
- 3.14 $wsAccount.pseudoCreditCards
- 3.15 $wsAccount.typeSeparation
- 3.16 $wsAccount.defaultBillAddress
- 3.17 $wsAccount.defaultDeliveryAddress
- 3.18 $wsAccount.addresses
- 4 Methoden
- 5 Aktionen
- 6 Beispiele für die Anzeige von Kundendaten
- 7 Weiterführende Links
Modulübersicht
Beispiel / Ausschnitt über $wsAccount
{{= $wsAccount | json }}
JSON-Ausgabe
{
"addressFields": [...],
"addresses": [...],
"autoLogInRestriction": "...",
"backInStockList": [...],
"customerData": { ... },
"defaultBillAddress": { ... },
"defaultDeliveryAddress": { ... },
"displayName": "...",
"email": "...",
"id": "...",
"isAccountVerified": true/false,
"isAutoLogInRestricted": true/false,
"isAutoLoggedIn": true/false,
"isLoggedIn": true/false,
"isPasswordResetRequired": true/false,
"lastLogin": "...",
"loadAddress": "ƒ()",
"loginRequired": "ƒ()",
"pseudoCreditCards": [...],
"typeSeparation": { ... }
}Anmerkung: “f()” kennzeichnet eine Funktion.
Variablen und Methoden in der Übersicht
Name | Rückgabe-Typ | Beschreibung |
|---|---|---|
| array | Gibt eine Liste aller verfügbaren Adressfelder mit deren Konfiguration zurück. |
| string | Gibt die E-Mail-Adresse des Kundenkontos zurück. |
| string | Gibt die Nutzer-ID des Kundenkontos zurück. |
| bool | Gibt zurück, ob das Kundenkonto verifiziert wurde. |
| bool | Gibt zurück, ob der Nutzer eingeloggt ist. |
| bool | Gibt zurück, ob der Nutzer automatisch eingeloggt wurde. |
| bool | Gibt zurück, ob beim automatischen Einloggen alle Shop-Funktionen verfügbar sind. |
| string | Gibt den Status der Auto-Login-Einschränkung zurück. |
| array | Gibt eine Liste der Produkte zurück, für die der Kunde eine Benachrichtigung bei Verfügbarkeit angefordert hat. |
| string | Gibt das Datum des letzten Logins zurück. |
| bool | Gibt zurück, ob das Passwort zurückgesetzt werden muss. |
| map | Gibt Informationen zu kundenspezifischen Feldern zurück (z.B. Label, Typ). |
| string | Gibt den Anzeigenamen des Kunden zurück. |
| map | Gibt eine Liste der gespeicherten Adressen zurück. |
| string | Gibt die Hauptadresse / Rechnungsadresse zurück. |
| array | Gibt eine Liste der gespeicherten Kreditkarten (pseudonymisiert) zurück. |
| map | Gibt Informationen zur Adresstyp-Trennung aus. |
| map | Gibt die Haupt-Rechnungsadresse aus. |
| map | Gibt die Standard-Lieferadresse aus. |
| map | Lädt entweder die gewählte Liefer-/Rechnungsadresse oder eine Adresse anhand einer ID. |
| bool | Gibt einen |
Templates
Grundsätzlich können die Daten eines Kunden, nachdem er eingeloggt ist, auf jedem Template geladen und angezeigt werden.
Variablen
$wsAccount.email
Gibt die E-Mail-Adresse des Kundenkontos zurück.
Beispiel, das prüft, ob es sich um eine Gast-Mailadresse oder eine E-Mail-Adresse eines Kundenkontos handelt.
{{ if $wsCheckout.guestMail }}
{{= $wsCheckout.guestMail }}
{{ else }}
{{= $wsAccount.email }}
{{ /if }}
$wsAccount.id
Gibt die Nutzer-ID des Kundenkontos zurück.
Nutzer-ID: {{= $wsAccount.id }}
$wsAccount.displayName
Gibt den Anzeigenamen des Kunden zurück.
Anzeigename: {{= $wsAccount.displayName }}
$wsAccount.isLoggedIn
Gibt zurück, ob der Nutzer eingeloggt ist.
{{ if $wsAccount.isLoggedIn }}
// Kunde ist eingeloggt.
{{ else }}
// Kunde ist noch nicht eingeloggt.
{{ /if }}
$wsAccount.isAutoLoggedIn
Gibt zurück, ob der Nutzer automatisch eingeloggt wurde.
{{ if $wsAccount.isAutoLoggedIn }}
//Nutzer wurde automatisch eingeloggt
{{ /if }}
$wsAccount.isAutoLogInRestricted
Gibt zurück, ob beim automatischen Einloggen alle Shop-Funktionen verfügbar sind. Mehr dazu in der Konfiguration.
{{ if $wsAccount.isAutoLogInRestricted }}
// Es sind nicht alle Shop-Funktionen verfügbar
{{ /if }}
$wsAccount.autoLogInRestriction
Gibt zurück, ob isAutoLogInRestricted aktiviert ist. Mehr dazu in der Konfiguration.
Beispiel, das prüft, ob autoLogInRestriction aktiv ist.
{{ if $wsAccount.autoLogInRestriction }}
AutoLogInRestricted ist aktiviert.
{{ /if }}
$wsAccount.lastLogin
Gibt das Datum des letzten Logins zurück.
Beispiel, das prüft, ob ein letzter Login registriert ist.
{ if $wsAccount.lastLogin }}
// Ein letzter Login ist registriert.
{ /if }
$wsAccount.isPasswordResetRequired
Gibt zurück, ob das Passwort zurückgesetzt werden muss. Mehr dazu in der Konfiguration.
Beispiel, das prüft, ob das Passwort zurückgesetzt werden muss.
{{ if $wsAccount.isPasswordResetRequired }}
Passwort muss zurückgesetzt werden.
{{ /if }}
$wsAccount.isAccountVerified
Gibt zurück, ob das Kundenkonto verifiziert wurde.
{{ if $wsAccount.isAccountVerified }}
// Konto ist verifiziert
{{ /if }}
$wsAccount.customerData
Gibt Informationen zu kundenspezifischen Feldern zurück. Mehr dazu in der Konfiguartion.
Beispiel, dass den Inhalt aller verfügbaren Felder ausgibt.
{{ foreach $myFieldVariable in $wsAccount.customerData }}
{{= $myFieldVariable.value }}<br>
{{ /foreach }}
$wsAccount.addressFields
Gibt eine Liste aller verfügbaren Adressfelder mit deren Konfiguration zurück.
Adressfelder: {{= $wsAccount.addressFields }}
$wsAccount.backInStockList
Gibt eine Liste der Produkte zurück, für die der Kunde eine Benachrichtigung bei Verfügbarkeit angefordert hat.
Produktliste: {{= $wsAccount.backInStockList }}
$wsAccount.pseudoCreditCards
Gibt eine Liste der gespeicherten Kreditkarten (pseudonymisiert) zurück.
Kreditkarten: {{= $wsAccount.pseudoCreditCards }}
$wsAccount.typeSeparation
Gibt Informationen zur Adresstyp-Trennung aus. Über diese Map lässt sich prüfen, ob Rechnungs- und Lieferadressen getrennt verwaltet werden und welche Einschränkungen dabei gelten.
Eigenschaften von $wsAccount.typeSeparation
Eigenschaft | Rückgabe-Typ | Beschreibung |
|---|---|---|
| bool | Gibt aus, ob die Adresstyp-Trennung aktiv ist. |
| bool | Gibt aus, ob noch eine neue Rechnungsadresse angelegt werden kann. |
| int | Gibt die maximale Anzahl erlaubter Rechnungsadressen aus.
|
| bool | Gibt aus, ob die Haupt-Rechnungsadresse schreibgeschützt ist. |
Beispiel das prüft, ob die Adresstyp-Trennung aktiv ist und ob eine neue Rechnungsadresse angelegt werden kann:
{{ if $wsAccount.typeSeparation.enabled }}
{{ if $wsAccount.typeSeparation.canCreateBillAddress }}
<!-- Neue Rechnungsadresse kann angelegt werden -->
{{ else }}
<!-- Maximale Anzahl an Rechnungsadressen erreicht -->
{{ /if }}
{{ /if }}
$wsAccount.defaultBillAddress
Gibt die Haupt-Rechnungsadresse des Kunden als Adress-Map aus (einschließlich id), sofern eine vorhanden ist. Die verfügbaren Eigenschaften entsprechen denen von $wsAccount.addresses.
Beispiel, das den Vor-und Nachnamen der Haupt-Rechnungsadresse ausgibt:
Vorname: {{= $wsAccount.defaultBillAddress.firstName }}
Nachname: {{= $wsAccount.defaultBillAddress.lastName }}
$wsAccount.defaultDeliveryAddress
Gibt die Standard-Lieferadresse des Kunden als Adress-Map aus (einschließlich id), sofern eine vorhanden ist. Die verfügbaren Eigenschaften entsprechen denen von $wsAccount.addresses.
Beispiel, das den Vor-und Nachnamen der Standard-Lieferadresse ausgibt:
Vorname: {{= $wsAccount.defaultDeliveryAddress.firstName }}
Nachname: {{= $wsAccount.defaultDeliveryAddress.lastName }}
$wsAccount.addresses
Gibt eine Liste der gespeicherten Adressen zurück.
Beispiel, das für jede gespeicherte Adresse den Vor- und Nachnamen ausgibt.
{{ foreach $address in $wsAccount.addresses }}
{{= $address.firstName }} {{= $address.lastName }}
{{ /foreach }}
Mit Verwendung der Rückgabe von $wsAccount.addresses stehen verschiedene Eigenschaften zur Verfügung, die verwendet werden können. Nachfolgend eine Übersicht, welche Eigenschaften verfügbar sind.
Eigenschaften von $wsAccount.addresses
Eigenschaften | Rückgabe-Typ | Beschreibung |
|---|---|---|
| string | Adress-ID |
| string | Anredecode |
| string | Titelcode (z.B.: Dr., Prof.) |
| string | Vorname |
| string | Nachname |
| string | Firmenname |
| string | Abteilung |
| string | Straße |
| string | Hausnummer |
| string | Zusätzliche Adressinformationen |
| string | Postleitzahl |
| string | Stadt |
| string | Bundesland / Region |
| string | Land |
| string | Tefonnummer |
| string | Mobiltelefonnummer |
| string | Faxnummer |
| string | Geschäftliche Telefonnummer |
| string | Geschäftliche Faxnummer |
| string | Geburtsdatum |
| string | Steuernummer |
| string | Typ der Adresse |
| map | Benutzerdefinierte Adressfelder |
| bool | Gibt aus, ob die Adresse als Rechnungsadresse verwendet werden kann. |
| bool | Gibt aus, ob die Adresse als Lieferadresse verwendet werden kann. |
| bool | Gibt aus, ob es sich zum die Haupt-Rechnungsadresse handelt. |
| bool | Gibt aus, ob es sich um die Standard-Lieferadresse handelt. |
| bool | Gibt aus, ob die Adresse schreibgeschützt ist. |
| string | Gibt den Pool-Typ der Adresse aus ( |
Methoden von $wsAccount.addresses
Neben den gespeicherten Eigenschaften stehen für jede Adresse zwei zusätzliche Methoden zur Verfügung, mit denen sich Labels und Standardwerte von Adressfeldern dynamisch im Frontend abrufen lassen:
$address.customLabel()
Gibt das benutzerdefinierte Label für ein bestimmtes Adressfeld aus, abhängig vom angegebenen Adresstyp.
Signatur$address.customLabel(fieldName, addressType)
Rückgabestring - Das konfigurierte Label für das Feld.
Parameter
Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| string | ja | Name des Adressfeldes (z.B. |
| string | ja | Adresstyp. Folgende Werte sind möglich:
|
Beispiel, dass das Label für das Feld “Vorname” im Kontext einer Rechnungsadresse ausgibt.
Vorname-Label: {{= $address.customLabel("firstName", "bill") }}
$address.defaultValue()
Gibt den konfigurierten Standardwert für ein bestimmtes Adressfeld aus, abhängig vom angegebenen Adresstyp.
Signatur$address.defaultValue(fieldName, addressType)
Rückgabestring - Der konfigurierte Standardwert für das Feld.
Parameter
Name | Typ | Pflicht | Beschreibung |
|---|---|---|---|
| string | ja | Name des Adressfeldes (z.B. |
| string | ja | Adresstyp. Folgende Werte sind möglich:
|
Beispiel, dass den Standardwert für das Feld “Firma” im Kontext einer Lieferadresse ausgibt.
{{= $address.defaultValue("company", "delivery") }}
Hinweis: Die Methoden customLabel() und defaultValue() haben aktuell nur im Checkout eine Wirkung, sobald der Benutzer eine Adresse ausgewählt hat. In zukünftigen Versionen werden sie auch im Kundenkonto zwischen Liefer- und Rechnungsadresse unterscheiden können.