Hinweis |
---|
Ab 30. September 2022 ist die Dhl Schnittstelle für Versionen < v7.0 nicht mehr erreichbar. |
...
Info |
---|
Weitere Informationen zur DHL Autocomplete2 Schnittstelle finden Siehier. |
DHL Datafactory ist eine Shop-Erweiterung welche die gleichnamige Schnittstelle der Deutschen Post verwendet um dem Kunden, bei Eingaben von Adressen, relevante Vorschläge aus deren Straßenverzeichnis anbietet. Dabei werden Informationen zur PLZ, dem Ort und der Straße berücksichtigt.
...
Konfiguration
Die Konfigurationstabelle "DHL Datafactory Konfiguration" findet sich standardmäßig im Bereich Shop → add in und dort in der Kachel DHL. API Benutzer und Passwort müssen von https://www.deutschepost.de/de/d/deutsche-post-direkt/datafactory.html bezogen werden. Es gibt hier auch die Optionen, die gesamte Funktion zu aktivieren / deaktivieren, die Funktion für einzelne Shop-Formulare zu aktivieren / deaktivieren und zu definieren ob die Felder umsortiert werden sollen.
...
Konfiguration Shop Formulare
...
Am Beispiel des Kontakformular:
Softwarekonfiguration - PLZ
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "dhlDatafactory": "postcode", "whitelist": [ "contact" ] } |
Softwarekonfiguration - Ort
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "dhlDatafactory": "city", "whitelist": [ "contact" ] } |
Softwarekonfiguration - Straße
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "dhlDatafactory": "street", "whitelist": [ "contact" ] } |
Softwarekonfiguration - Hausnummer
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "dhlDatafactory": "houseNumber", "whitelist": [ "contact" ] } |
Softwarekonfiguration - Land
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "dhlDatafactory": "country", "feature": "input/select.select/key/value", "enumerationPlugin": "shop/delivery", "enumerationFunction": "getEnumerationDeliveryCountrySelectIsoCode", "whitelist": [ "contact" ] } | ||||||||
Codeblock | ||||||||
js | ||||||||
theme | RDark | title |
Softwarekonfiguration - Manuelle Eingaben
Codeblock | ||
---|---|---|
| ||
{ "blacklist": [ "contact" ], "dhlDatafactory": "storage", "feature": "input/yaml.editable" } |
...
Das Feld für das Land muss speziell konfiguriert sein. Es sollte ein Benutzerdefiniertes Feld sein mit folgender Konfiguration. Im Prinzip ist wichtig, dass die Werte keine IDs sind, sondern IsoCodes wie (DE, EN, etc).
Codeblock | ||||
---|---|---|---|---|
| ||||
{ "dhlDatafactory": "country", "feature": "input/select.select/key/value", "enumerationPlugin": "shop/delivery", "enumerationFunction": "getEnumerationDeliveryCountrySelectIsoCode" } |
...
Damit die manuellen Eingaben an einem Datensatz gespeichert werden, muss ein spezielles Feld an dem Datensatz vorhanden sein. Dieses Feld sollte wie folgt konfiguriert sein.
...
Die Softwarekonfiguration sollte dann ähnlich wie folgt aussehen. Der Blacklist-Key catalogueform bezieht sich hier auf ein Formular das welches über Formulare im CMS nutzen auf der Seite platziert wurde. Wichtig ist hier "dhlDatafactory: storage" da diese Auszeichnung das Feld als Datenspeicher für die manuellen Benutzereingaben definiert.
...
...
Feldkonfiguration json
Codeblock | ||||||||
---|---|---|---|---|---|---|---|---|
| ||||||||
{ "blacklist": [ "catalogueform", "contact" ], "dhlDatafactory": "storage", "feature": "input/yaml.editable" } |
...
Interface: \brandbox\shop\dhlDatafactory\lib\event\dhlDatafactoryEventInterface
Adapter: \brandbox\shop\dhlDatafactory\lib\event\adapter\dhlDatafactoryEventAdapter
Methode | Eingabe | Rückgabe | Beschreibung |
---|---|---|---|
onUpdateStorage |
|
| Wird ausgeführt wenn das Feld für die Benutzerdefinierten Eingaben, zum Beispiel manuelle Eingabe, befüllt werden soll. Das kann dazu benutzt werden, die Informationen in einem anderen Format in einem anderen Feld zu speichern. Beispiel: Ein Sync mit einem Fremdsystem welches ein anderes Format für die Daten oder nur ein "Benutzer hat manuelle Änderungen gemacht (Ja / Nein)" braucht. |
dtoEventUpdateStorage
...