Skip to main navigation Skip to main content Skip to page footer

Erstellung eines Frontend-Benutzer beim Checkout

Zuerst muss die createFrontendUser Checkbox und das password Feld in die Checkout-Form integriert werden, in dem diese Werte in der Field-List hinzugefügt werden.

Für den onInvoice könnten die TypoScript-Konstanten wie folgt aussehen:

themes.configuration.extension.shop.checkout.onInvoice.fields.available = company, vatId, gender, firstname, lastname, street, houseNumber, postalCode, city, country, phone, email, password, message, deliveryAddressEnabled, deliveryAddressCompany, deliveryAddressFirstname, deliveryAddressLastname, deliveryAddressStreet, deliveryAddressHouseNumber, deliveryAddressPostalCode, deliveryAddressCity, deliveryAddressCountry, privacyProtectionConfirmed, termsConfirmed, disclaimerConfirmed, createFrontendUser

Wenn bereits ein Frontend-Benutzer im Frontend eingeloggt ist, wird die Checkbox und das Passwortfeld nicht angezeigt. Wenn es Pflicht sein soll, das ein Benutzer während des Checkouts erstellt wird, muss dieser Wert auch in die required Sektion eingefügt werden. Das Passwort sollte sowieso immer Pflicht sein, daher fügen wir es auch ein.

themes.configuration.extension.shop.checkout.onInvoice.fields.required = firstname, lastname, street, houseNumber, postalCode, city, country, email, password, privacyProtectionConfirmed, termsConfirmed, disclaimerConfirmed, deliveryAddressFirstname, deliveryAddressLastname, deliveryAddressStreet, deliveryAddressHouseNumber, deliveryAddressPostalCode, deliveryAddressCity, deliveryAddressCountry, createFrontendUser

Achtung:

Du musst die Checkbox und das Passwort-Feld für alle Payment-Types hinzufügen!

Du musst ebenfalls das statische TypoScript-Template Modules - FE-Registration & Profile (modules) in deinem TypoSript-Root-Template hinzufügen und via TypoScript-Konstanten den Daten-Container definieren, in dem die Frontend-Benutzer abgelegt werden sollen, die Frontend-Benutzergruppen die zugewiesen werden sollen und optional den Record-Type des Frontend-Benutzers:

themes.configuration.container.frontendUser = 35
themes.configuration.extension.modules.registration.frontendUserGroups = 1
themes.configuration.extension.modules.registration.recordType =

Nach erfolgreichem Checkout und Frontend-Benutzererstellung wird die Bestellung dem Frontend-Benutzer zugeordnet. War während des Checkout-Prozesses bereits ein Benutzer angemeldet, wird nur die Bestellung dem Frontend-Benutzer zugeordnet.

Generell nutzt dieses Feature den folgenden Event-Listener:

  CodingMs\ShopPro\EventListener\BasketOrder\CreateFrontendUserEventListener:
    tags:
      - name: event.listener
        identifier: 'createFrontendUserListener'
        event: CodingMs\Shop\Event\BasketOrder\AfterSuccessfulOrderEvent

Das heißt, dass Du ähnliche Dinge in deinem eigenen Event-Listener machen kannst.

Achtung:

Die Erstellun der Frontend-Benutzers findet im PayPal-Checkout bspw. asynchron im Callback statt, und kann daher zeitlich ein wenig später stattfinden!

Dokumentation

TYPO3 Shop

Diese Erweiterung ist eine umfangreiche Shop-Erweiterung für TYPO3 zur Umsetzung von Webshops, Online-Shops oder Abo-Systemen (vergleicbar mit tt_products, Quick-Shop oder Aimeos).

Menü
Warenkorb 0 Produkte

Dieses Demo wurde gebaut mit*

EXT:bootstrap_package für das Site-Package aka Theme basierend auf Bootstrap 5.

EXT:modules für Benutzer-Plugins wie Benutzerprofile, Registrierung, Benutzeradressen und mehr.

EXT:shop für die gesamte Shop-Funktionalität.

EXT:questions für die FAQ-Seite und die in den Produktdetailseiten verlinkten FAQs.

EXT:glossaries für die Glossare und Definitionen.

EXT:fluid_fpdf zur Erstellung von Rechnungen, Lieferscheinen, Produktblättern und mehr.

EXT:parsedown_extra zum Rendern der Erweiterungsdokumentation von Markdown in HTML.

* Es wurden ausschließlich integrierte Einstellungen mit site-settings & TypoScript vorgenommen – keine Templates oder andere Dateien wurden geändert oder überschrieben!