Pfad für Entwickler
Diese Seite ist für Entwickler, die einen Exponential-Shop bauen oder den Shop erweitern: interne Entwickler und die Entwickler einer Agentur. Sie enthält die Code-Übersicht des Shops, jeden Erweiterungspunkt mit der Einstellung, die ihn auswählt, und eine Lesereihenfolge durch die technischen Seiten.
Inhalt
- Die Code-Übersicht
- Erweiterungspunkte auf einen Blick
- Generatoren, die Zeit sparen
- Lesereihenfolge
- Faustregeln
Die Code-Übersicht
| Was | Wo |
|---|---|
| Shop-Modul: Views, Richtlinienfunktionen, Einschränkungen | kernel/shop/module.php |
| Der Code der Views (Einstiegsdateien rufen Klassen auf) | kernel/shop/*.php, kernel/private/classes/views/shop/ |
| Shop-Operationen (welche Trigger es gibt und was dazwischen läuft) | kernel/shop/operation_definition.php, kernel/shop/ezshopoperationcollection.php |
Fetch-Funktionen für Templates (fetch( 'shop', ... )) | kernel/shop/function_definition.php, kernel/shop/ezshopfunctioncollection.php |
| Bestellungen, Posten, Status, Statusverlauf | kernel/classes/ezorder.php, ezorderitem.php, ezorderstatus.php, ezorderstatushistory.php |
| Warenkörbe und Produktsammlungen | kernel/classes/ezbasket.php, ezproductcollection.php, ezproductcollectionitem.php, ezproductcollectionitemoption.php |
| USt. | kernel/classes/ezvattype.php, ezvatrule.php, ezvatmanager.php, vathandlers/ |
| Versand und Warenkorbinformationen | kernel/classes/ezshippingmanager.php, basketinfohandlers/ |
| Shop-Konten und die Bestellmail | kernel/classes/ezshopaccounthandler.php, shopaccounthandlers/, ezconfirmorderhandler.php, confirmorderhandlers/ |
| Rabatte und Wunschliste | kernel/classes/ezdiscount*.php, ezuserdiscountrule.php, ezwishlist.php |
| Basisklassen für Zahlungen | kernel/shop/classes/ezpaymentgateway.php, ezredirectgateway.php, ezpaymentobject.php, ezpaymentcallbackchecker.php |
| Vom Shop verwendete Workflow-Ereignistypen | kernel/classes/workflowtypes/event/ezpaymentgateway/, ezsimpleshipping/, ezmultiplexer/ |
| Währungen und Wechselkurse | kernel/shop/classes/ezcurrencydata.php, ezcurrencyconverter.php, exchangeratehandlers/ |
| Shop-Templates des Standarddesigns | design/standard/templates/shop/ |
Erweiterungspunkte auf einen Blick
| Sie möchten | Erweiterungspunkt | Ausgewählt durch | Seite |
|---|---|---|---|
| Versand nach eigenen Regeln berechnen | Versand-Handler | shop.ini [ShippingSettings] Handler | Eigener Versand-Handler |
| Die USt. nach eigenen Regeln bestimmen | USt-Handler | shop.ini [VATSettings] Handler | Eigener USt-Handler |
| Zahlungen über einen anderen Anbieter annehmen | Zahlungs-Gateway | paymentgateways.ini, ein Ereignis Zahlungs-Gateway | Entwicklung von Zahlungs-Gateways |
| Andere Kundendaten erfassen | Shop-Konto-Handler | shopaccount.ini [AccountSettings] Handler | Shop-Konto-Handler |
| Die Bestellmail ändern | Handler für die Bestellbestätigung | shopaccount.ini [ConfirmOrderSettings] Handler | Handler für Warenkorbinformationen und Bestellbestätigung |
| Die Summen des Warenkorbs ändern | Handler für Warenkorbinformationen | shop.ini [BasketInfoSettings] Handler | ebenda |
| Wechselkurse anderswo abrufen | Handler für Wechselkurs-Aktualisierung | shop.ini [ExchangeRatesSettings] ExchangeRatesUpdateHandler | Wechselkurs-Handler |
| Ein eigenes Preisfeld | Preis-Datentyp | site.ini [ShopSettings] ProductDatatypeStringList[] | Eigene Preis-Datentypen |
| Code bei einem Shop-Schritt ausführen | Workflow-Ereignistyp an einem Shop-Trigger | workflow.ini | Workflows an Shop-Triggern |
Generatoren, die Zeit sparen
Die RAD-Werkzeuge unter Setup schreiben funktionierende Gerüste in eine Erweiterung:
setup/handlerextension/<kind>(Richtliniesetup/setup) hat Rezepte für ein Zahlungs-Gateway (Weiterleitung und transparent), einen USt-Handler, einen Versand-Handler, einen Handler für Warenkorbinformationen und einen Wechselkurs-Handler, jeweils mit den zu schreibenden Methoden und der nötigen Einstellung (Erweiterungen).setup/workfloweventschreibt einen Workflow-Ereignistyp (Einen Workflow-Ereignistyp schreiben).
Prüfen Sie eine erzeugte Datei gegen die Ladepfade, die auf jeder Erweiterungsseite beschrieben sind, bevor Sie sich
darauf verlassen, und führen Sie danach php bin/php/checkclasses.php --quiet-ok aus.
Lesereihenfolge
- Einen Shop betreiben: Überblick und Warenkorb, Kasse und Bestellungen: die Teile.
- Die Kassenoperationen Schritt für Schritt und Temporäre Bestellungen und Aktivierung: was wann läuft.
- Die Shop-Einstellungen durchgegangen: jede Einstellung.
- Workflows an Shop-Triggern und Das Ereignis Zahlungs-Gateway.
- Die Seite des Erweiterungspunkts, den Sie brauchen, in Den Shop erweitern.
- Einen Shop testen und Fehlersuche an der Kasse.
Faustregeln
- Legen Sie Shop-Einstellungen in
settings/override/oder einen Siteaccess-Ordner, nie in die ausgeliefertensettings/*.ini(Die Shop-Einstellungen durchgegangen). - Legen Sie Handler und Gateways in eine eigene Erweiterung, nicht in
kernel/(Als Erweiterung paketieren). - Protokollieren oder speichern Sie nie Kartendaten; der Prüfpfad zeichnet Zahlungen ohne sie auf, und Ihr Code sollte das ebenso tun (Sicherheit für Anwendungen).
- Testen Sie jede Änderung mit einer vollständigen Bestellung im Testmodus des Anbieters (Einen Shop testen).
Verwandte Seiten
- Pfade nach Rolle
- Anwendungsentwickler: hier beginnen
- Workflows, Trigger und Ereignisse
- Headless Commerce mit expservices
- Freie Dokumentation: Diese Seite darf unter der GNU FDL 1.3 frei kopiert, übersetzt und verbessert werden.
Werden Sie Exponential-Partner
Partner teilen ihre Informationen, stellen Mittel bereit, geben Beiträge zurück und entwickeln die Produkte mit uns, und so wächst Exponential. Eine Partner-Website und ein Dashboard sind für Mitte 2027 geplant: Werden Sie noch heute Partner, damit wir schneller wachsen und neue Funktionen früher liefern.