Markus Michalski FAQ

Support Form

Konfigurierbares Support-Formular für Sylius - Betreff-Auswahl aus Produkten oder Kategorien pro Channel, Zusatzfelder im Admin, gespeicherte Anfragen, Bestätigungsmail, Shop API

English Version

Zurück zu Sylius Plugins

Support Form

Sylius
PHP
License

Diese Dokumentation bezieht sich immer auf die aktuellste veröffentlichte Version.

Live Demo: Teste dieses und weitere Plugins live — ohne Installation, ohne Risiko: demo.markus-michalski.net

Überblick

Das Kontaktformular von Sylius verschickt nur eine E-Mail mit einem frei getippten Betreff. Ein Support-Formular braucht mehr: Kunden sollen aus einer kuratierten Liste wählen, wozu sie Hilfe brauchen, zum Beispiel bei einem gekauften Produkt oder in einer Produktkategorie. Und du als Shop-Betreiber willst Zusatzfelder wie Bestellnummer oder Dringlichkeit ergänzen, ohne dafür Code zu ändern.

Dieses Plugin bringt dafür ein eigenes Formular unter /support mit. Welche Produkte oder Kategorien als Betreff zur Auswahl stehen, legst du pro Channel fest. Alle weiteren Felder definierst du im Admin. Fest vorgegeben sind nur der Betreff und die Einwilligung zur Datenschutzerklärung. Jede Anfrage wird gespeichert, du bekommst eine E-Mail, und der Kunde kann eine Bestätigung erhalten.

Das Formular funktioniert im Shop und über die Shop API gleich. Beide Wege nutzen dieselbe Prüfung und dieselbe Verarbeitung, sodass ein Headless-Frontend dieselben Regeln einhält wie die Storefront.

graph LR
    A["Storefront /support"] --> C["Verarbeitung der Anfrage"]
    B["Shop API POST /shop/support-requests"] --> C
    C --> D["Event PRE_PERSIST"]
    D --> E["Anfrage speichern"]
    E --> F["E-Mail an dich"]
    E --> G["Bestätigung an den Kunden"]
    E --> H["Admin-Liste und Admin-API"]

Dokumentation

Seite Inhalt
Installation und Betrieb Installation, Setup-Befehl, Update, alte Anfragen regelmäßig löschen, Deinstallation
Konfiguration Channel-Konfiguration, Zusatzfelder, Anfragen im Admin, Praxis-Beispiele
Storefront Formular im Shop, Footer-Link, E-Mails, Datenschutz-Link, Theme-Anpassungen
Shop API Endpunkte für Headless-Clients, Request-Body, Fehlerformat
Erweiterbarkeit Event vor dem Speichern, Formular-Erweiterungen, austauschbare Services
Fehlerbehebung und FAQ Typische Probleme, bekannte Einschränkungen, häufige Fragen
Technische Details Ablauf als Diagramm, Plugin-Struktur, Tabellen und Migrationen

Features

Feature Beschreibung
Eigenes Formular Route /support, unabhängig vom Sylius-Kontaktformular
Betreff-Auswahl pro Channel Eine kuratierte Liste aus Produkten oder aus Kategorien. Ohne Konfiguration tippt der Kunde den Betreff frei ein.
Zusatzfelder im Admin Neun Feldtypen: Text, mehrzeiliger Text, E-Mail, Zahl, Checkbox, Datum, Uhrzeit, Datum und Uhrzeit, Auswahl. Mit Übersetzungen, Pflichtangabe, Reihenfolge und Grenzwerten.
Gespeicherte Anfragen Admin-Liste mit Detailansicht, Antworten als Momentaufnahme gespeichert
Empfänger pro Channel Die Benachrichtigung geht an eine eigene Adresse, zum Beispiel das Eingangspostfach deines Ticketsystems
Bestätigung an den Kunden Eine kurze Empfangsbestätigung samt Kopie der Angaben, sobald der Kunde eine E-Mail-Adresse angegeben hat
Datenschutz-Link pro Channel „Datenschutzerklärung“ in der Einwilligung wird zum Link
Shop API Absenden, Felddefinitionen und Betreff-Auswahl für Headless-Clients
Befehl zum Löschen mmd:support-requests:purge entfernt alte Anfragen, damit personenbezogene Daten nicht dauerhaft liegen bleiben
Setup-Befehl mmd:support-form:setup führt nur die Migrationen dieses Plugins aus
Event vor dem Speichern Eine Erweiterung kann Anfragen auf beiden Wegen ablehnen, zum Beispiel für Spam-Schutz

Anforderungen

Anforderung Version Hinweise
Sylius ^2.2 Getestet gegen Sylius 2.2 und 2.3
PHP ^8.3
API Platform ^4.2.1 oder ^5.0 Wird mit Sylius installiert, beide Hauptversionen werden getestet
Datenbank MySQL/MariaDB PostgreSQL wird nicht unterstützt. Die Migrationen sind in MySQL-DDL geschrieben.

Das Formular hat keinen eigenen Spam-Schutz. Die Bestätigungsmail geht an jede Adresse, die ins Formular getippt wird. Lies vor dem Livegang die bekannten Einschränkungen.

Lizenz

License

Kommerzielle Lizenz: Eine Lizenz gilt für eine Sylius-Installation (alle Channels sowie deren Entwicklungs- und Staging-Umgebungen). Eine Weitergabe ist nicht erlaubt, Updates sind 12 Monate ab Kauf enthalten.

Support

Bei Fragen zur Lizenz, technischen Fragen oder Fehlern erreichst du mich unter support@markus-michalski.net.