Bitte beachte, dass sich diese Dokumentation auf die neuste Version dieser Erweiterung bezieht. Wenn eine ältere Version eingesetzt wird, kann diese abweichen. Die jeweils passende Dokumentation befindet sich im Dokumentation-Verzeichnis der Erweiterung.
Abweichende Lieferadresse
Compatibility:
Seit der EXT:shop Version 2.2.0 gibt es eine Möglichkeit im Checkout-Formular eine optionale abweichende Lieferadresse anzugeben.
Konfiguration
Um diese Funktion zu aktivieren, müssen folgende TypoScript Variablen überschrieben werden:
plugin.tx_shop.settings.basketOrder.onInvoice.fields {
available = deliveryAddressEnabled, deliveryAddressCompany, deliveryAddressFirstname, deliveryAddressLastname, deliveryAddressStreet, deliveryAddressPostalCode, deliveryAddressCity
required = deliveryAddressCompany, deliveryAddressFirstname, deliveryAddressLastname, deliveryAddressStreet, deliveryAddressPostalCode, deliveryAddressCity
}
Dabei ist das vordefinierte Feld deliveryAddressEnabled
eine Checkbox. Falls diese Checkbox beim Absenden des Formulars gesetzt ist, werden die in der plugin.tx_shop.settings.basketOrder.onInvoice.fields.required
Variable aufgeführten Felder validiert. Falls das nicht der Fall ist, werden die Felder als optionale Felder behandelt.
Vordefinierte Felder und Felddefinition
Die Adressenfelder deliveryAddressCompany
, deliveryAddressFirstname
, deliveryAddressLastname
, deliveryAddressStreet
, deliveryAddressPostalCode
und deliveryAddressCity
sind vordefiniert.
Es lassen sich aber auch eigene Felder definieren in dem man folgende TypoScript Variablen ergänzt:
plugin.tx_shop.settings.basketOrder.fieldDefinition {
deliveryAddressHouseNumber {
label = Hausnummer
type = input
eval = trim
deliveryAddress = 1
placeholder = Hausnummer
errors {
isEmpty = Bitte geben Sie Ihre Hausnummer ein
}
}
}
Das Flag deliveryAddress = 1
sorgt dafür, dass das Feld wie eine abweichende Lieferadresse behandelt und nur bei Bedarf validiert wird.
Adressauswahl basierend auf Frontend-Benutzeradressen
Kompatibilität:
Erfordert Shop-Version 4.8.0-4.99.99 oder Version 5.1.0 oder höher
Die Erweiterung EXT:modules bietet die Möglichkeit, als Frontend-Benutzer verschiedene Adressen zu verwalten. Diese können im Checkout ausgewählt werden, sofern ein Frontend-Benutzer angemeldet ist.
Um diese Adressauswahl zu nutzen, muss das Feld deliveryAddresses
nach dem Feld deliveryAddressEnabled
, aber vor allen anderen deliveryAddress…
-Feldern definiert werden. Die Definition von deliveryAddresses
lautet:
plugin.tx_shop.settings.basketOrder.fieldDefinition {
deliveryAddresses {
label = Address
type = address
eval = trim
deliveryAddress = 1
errors {
isEmpty = Please choose your delivery address
}
}
}
Die Konfiguration für eine Vorauszahlungskasse könnte folgendermaßen aussehen:
themes.configuration.extension.shop.checkout.prePayment.fields {
available = firstname, lastname, email, deliveryAddressEnabled, deliveryAddresses, deliveryAddressCompany, deliveryAddressFirstname, deliveryAddressLastname, deliveryAddressStreet, deliveryAddressHouseNumber, deliveryAddressPostalCode, deliveryAddressCity, deliveryAddressCountry
required = firstname, lastname, email, deliveryAddresses, deliveryAddressFirstname, deliveryAddressLastname, deliveryAddressStreet, deliveryAddressHouseNumber, deliveryAddressPostalCode, deliveryAddressCity, deliveryAddressCountry, createFrontendUser
}
Achtung:
Bitte achte darauf, dass die neu eingeführte Einstellung
fetchFrom
in der Felddefinition konfiguriert ist!