Beschreibung
Mit sinnvoll Booking Flow fügst du Anmeldeformulare für Seminare und Events per Shortcode auf jeder WordPress-Seite oder in jedem Beitrag ein. Besucher melden sich zu deinen Events an, du verwaltest Teilnehmer und Buchungen im Admin-Bereich, und alle erhalten automatische Bestätigungs-E-Mails.
Zentrale Funktionen
- Buchungs-Widget für jedes Event per
[sinnvoll_bf_widget id="EVENT_ID"] - Event-Listen nach IDs oder Zeitraum per
[sinnvoll_bf_event_list] - Mehrere Teilnehmer pro Buchung mit Angaben je Teilnehmer
- Ticket-Kapazität und Mindest-Teilnehmerzahl je Event
- Konfigurierbare Bestätigungs-E-Mails mit Platzhaltern (Bucher, Teilnehmer, Event, Buchungsdetails) und mehrsprachigen Vorlagen
- Admin-Verwaltung von Events, Buchungen und Teilnehmern, inklusive erneutem Versand von Bestätigungs-E-Mails
- CSV-Export von Buchungen und Teilnehmern
- DSGVO-Werkzeuge: Integration in Export und Löschung über WordPress-Datenschutz, plus optionale automatische Anonymisierung alter Datensätze
- Stornoregeln und gesetzliches Widerrufsformular per Shortcode
- Spam-Schutz für Buchungsabsendungen (Stichwort-/Domain-Filter, Mindest-Absendezeit)
- Anpassbare Frontend-Texte in mehreren Sprachen
Shortcodes
[sinnvoll_bf_widget id="EVENT_ID" lang="de|en"]— vollständiges Buchungs-Widget für ein Event[sinnvoll_bf_button id="EVENT_ID"]— nur der „Buchen“-Button[sinnvoll_bf_event_list timeframe="future|past|all"]— Liste von Events[sinnvoll_bf_confirmation]— Buchungsbestätigungs-Meldungen auf deiner Erfolgsseite[sinnvoll_bf_revocation_form]— gesetzliches Widerrufsformular[sinnvoll_bf_cancellation_policy]— gibt deinen Stornoregeln-Text aus
Mehr Möglichkeiten mit sinnvoll Booking Flow Pro
Du brauchst mehr? sinnvoll Booking Flow Pro ergänzt Gutscheine, PDF-Zertifikate für Teilnehmer, Wartelisten, mehrere Ticket-Typen pro Event, buchbare Zusatzleistungen, Sammel-E-Mails an Teilnehmer, einen visuellen Formular-Editor, Excel-Export und Kalendereinladungen. Einmaliger Kauf, 12 Monate Updates und Support inklusive.
Datenschutz
Dieses Plugin verarbeitet personenbezogene Daten, weil es Buchungen auf deiner Website abwickelt. Alle Daten bleiben in deiner WordPress-Datenbank; das Plugin ruft keine externen Dienste auf. Was es speichert:
- Buchungsdaten, die du über das Formular erhebst (Namen, E-Mail-Adressen und alle Felder, die du konfigurierst) — so lange, wie du die Buchungen aufbewahrst.
- Einwilligungsprotokoll: Beim Absenden einer Buchung zeichnet das Plugin auf, welche Einwilligungs-Checkboxen akzeptiert wurden — zusammen mit Zeitstempel, IP-Adresse und Browser-User-Agent des Besuchers, als Nachweis der Einwilligung. Die optionalen Aufbewahrungs-Einstellungen anonymisieren die IP-Adresse nach der konfigurierten Frist.
- Audit-Log: Administrative Änderungen an Buchungen und Teilnehmern werden mit handelndem Benutzer, IP-Adresse und User-Agent aufgezeichnet, damit Änderungen nachvollziehbar bleiben.
- Rate-Limiting: Öffentliche Buchungsabsendungen werden je Client-IP mit einem kurzlebigen, gehashten Zähler erfasst. Dafür wird keine IP im Klartext gespeichert, und es ist kein Cookie beteiligt.
- Sicherheits-Cookie: siehe die FAQ oben zum Cookie
sinnvoll_bf_cid.
Das Plugin integriert sich in die WordPress-Werkzeuge zum Export und Löschen personenbezogener Daten (Werkzeuge Personenbezogene Daten exportieren/löschen) und hinterlegt einen Formulierungsvorschlag im Datenschutzerklärungs-Editor (Einstellungen Datenschutz). Die Prüfung und Veröffentlichung der Datenschutzerklärung deiner Website bleibt deine Verantwortung.
Screenshots



Installation
- Lade die Plugin-Dateien nach
/wp-content/plugins/sinnvoll-booking-flowhoch oder installiere das Plugin direkt über die Plugins-Seite von WordPress. - Aktiviere das Plugin über die „Plugins“-Seite in WordPress.
- Öffne sinnvoll Booking Flow im Admin-Menü und lege dein erstes Event an.
- Füge mit
[sinnvoll_bf_widget id="EVENT_ID"]ein Buchungs-Widget auf einer beliebigen Seite ein (die Event-ID steht in der Event-Liste). - Konfiguriere Bestätigungs-E-Mails, Absenderdaten und Texte unter sinnvoll Booking Flow Einstellungen.
FAQ
-
Wie zeige ich ein Buchungsformular auf einer Seite an?
-
Lege im Admin-Bereich ein Event an, notiere seine ID und setze dann
[sinnvoll_bf_widget id="EVENT_ID"]auf eine beliebige Seite oder in einen Beitrag. -
Können Besucher mehr als einen Teilnehmer anmelden?
-
Ja. Eine Buchung kann mehrere Teilnehmer enthalten, jeweils mit eigenem Namen und eigener E-Mail-Adresse.
-
Versendet es Bestätigungs-E-Mails?
-
Ja. Bestätigungs-E-Mails werden automatisch versendet und sind vollständig konfigurierbar — inklusive Platzhaltern und mehreren Sprachen.
-
Hilft es bei der DSGVO?
-
Das Plugin bringt Werkzeuge mit, die DSGVO-Abläufe unterstützen: Es integriert sich in die WordPress-Werkzeuge zum Export und Löschen personenbezogener Daten und bietet optional die automatische Anonymisierung alter Datensätze. Konform wird deine Website dadurch allein noch nicht — das hängt immer davon ab, wie du deine Website konfigurierst und betreibst, von deinen Rechtstexten und deinen eigenen Prozessen.
-
Es setzt genau ein Cookie,
sinnvoll_bf_cid, und nur dann, wenn für einen nicht eingeloggten Besucher ein Buchungs-Widget oder Widerrufsformular gerendert wird, das ein Sicherheits-Token braucht. Es speichert eine zufällige pseudonyme Kennung — ohne Buchungsdaten und ohne Tracking — und dient allein dazu, die Sicherheits-Nonce des Formulars an den Browser des Besuchers zu binden. Das härtet das öffentliche Buchungsformular gegen Cross-Site-Request-Forgery und automatisierten Missbrauch. Es ist als technisch notwendiges Sicherheits-Cookie konzipiert; die rechtliche Einordnung für deine Website kann das Plugin dir aber nicht abnehmen — du bist dafür verantwortlich, deine lokalen Einwilligungs- und Informationspflichten zu prüfen und das Cookie in deinem Cookie-/Datenschutzhinweis aufzuführen. Als Hilfe hinterlegt das Plugin einen Textvorschlag im Datenschutzerklärungs-Editor von WordPress (Einstellungen Datenschutz). -
In welchem Format kann ich Buchungen exportieren?
-
Buchungen und Teilnehmer lassen sich als CSV exportieren — die Datei öffnet sich in jeder Tabellenkalkulation.
Rezensionen
Zu diesem Plugin liegen noch keine Rezensionen vor.
Mitwirkende und Entwickler
„sinnvoll Booking Flow“ ist Open-Source-Software. Folgende Menschen haben an diesem Plugin mitgewirkt:
Mitwirkende„sinnvoll Booking Flow“ wurde in 1 Sprache übersetzt. Danke an die Übersetzer für ihre Mitwirkung.
Übersetze „sinnvoll Booking Flow“ in deine Sprache.
Interessiert an der Entwicklung?
Durchstöbere den Code, sieh dir das SVN-Repository an oder abonniere das Entwicklungsprotokoll per RSS.
Änderungsprotokoll
1.12.0
- Security: The public booking form’s security token is now really bound to the visitor’s browser (a strictly necessary cookie, set only on pages with a booking or withdrawal form). Booking pages are marked as not cacheable so a cached page can never hand one visitor’s token to another.
- Changed: The public booking form no longer checks for double bookings before submitting (that check could confirm to anyone who knew a name and e-mail address whether the person attends an event). Instead, when the same e-mail address already has a live booking for the event, the booker’s own confirmation e-mail now says so and offers the withdrawal link.
- Improved: A visitor whose browser blocks cookies sees a clear notice in the booking form instead of an error page; an expired form leads back to the form with an explanation.
- Improved: Cancelled or expired registrations no longer count as duplicates in the admin editor, and a booking without any attendee now shows the matching hint instead of a generic error.
- Fixed: A licence-warning translation that could break the admin notice on German sites.
- New: The booking form updates its price summary live, based on the number of attendees — adding or removing an attendee recalculates immediately, and typing names never triggers a request.
- Fixed: The withdrawal link in confirmation emails works again, and each link is now valid for exactly one submission.
- Fixed: The personal data export (Tools Export Personal Data) now really includes bookings, attendees, and the stored billing address.
- Fixed: Confirming an event no longer removed its attendees from the capacity count and the statutory withdrawal period.
- Improved: Saving a booking in the admin area is now all-or-nothing — if any part of the save cannot be stored, the whole booking stays exactly as it was and the editor says so.
- Improved: Changing a booking’s status in the editor now applies the same checks and follow-ups (capacity, attendee statuses, emails) as the list actions.
- Improved: Deleting an event permanently refuses to leave related records behind; restoring from trash brings back only what was trashed together, and respects the event capacity.
- Improved: Capacity is reserved reliably even when several bookings arrive at the same moment.
- Improved: Public endpoints (price preview, withdrawal) carry their own request limits, and admin messages now always show the text that matches the action.
- Improved: Add-ons can now apply their changes inside the same save operation, so a failed save leaves nothing half-applied.
- Fixed: Status emails from bulk actions are only sent when the status change actually succeeded.
- Fixed: Saving an event now reports a problem instead of showing „successfully saved“ when the event could not be stored; your entries stay in the form so you can try again.
- Fixed: Duplicating an event is all-or-nothing — if the copy or any of its ticket types cannot be created, nothing half-finished is left behind and the message says so.
- Improved: Restoring an event from the trash is all-or-nothing as well, and a database problem while reading is no longer mistaken for „there was nothing to restore“.
1.11.17
- Behoben: Das Pro-IP-Limit für Buchungsabsendungen konnte zu wenige Versuche zählen, wenn mehrere im selben Moment eintrafen, und griff dadurch später als konfiguriert. Versuche werden jetzt so gezählt, dass keiner verloren gehen kann.
1.11.16
- Behoben: Ein übrig gebliebener geplanter Task aus älteren Versionen lief weiter zweimal täglich, obwohl ihn nichts mehr nutzte; das Deaktivieren des Plugins entfernt ihn jetzt.
1.11.15
- Behoben: Im Buchungsdialog konnte der Tastaturfokus im unsichtbaren Spam-Schutz-Feld statt im ersten echten Feld landen — wer direkt nach dem Öffnen tippte, schrieb ins Leere, und die Buchung konnte als Spam markiert werden.
1.11.14
- Behoben: Bei ausgebuchten Events mit aktiver Warteliste verweigerte der Button „Teilnehmer hinzufügen“ jede Anmeldung („Nur noch 0 Plätze frei“) — die Restplatz-Prüfung tritt im Wartelisten-Modus jetzt zurück, dort akzeptiert der Server beliebig viele Teilnehmer.
1.11.13
- Behoben: Alle Plugin-Texte konnten auf übersetzten Websites englisch erscheinen, obwohl vollständige Übersetzungen existieren — das wp.org-Sprachpaket wird jetzt explizit geladen, statt sich auf das Just-in-time-Laden von WordPress zu verlassen.
1.11.12
- Behoben: Pflicht-Checkbox-Gruppen (z. B. Anwesenheitstage) verlangten, dass ALLE Optionen angehakt sind — der Browser blockierte Gäste stillschweigend, die nur einige auswählten. Jetzt genügt mindestens eine, mit einer klaren Browser-Meldung, wenn keine ausgewählt ist.
- Verbessert: Bleibt ein Pflichtfeld leer, nennt die Buchungs-Fehlermeldung jetzt das Feld, statt eine allgemeine Meldung zu zeigen.
- Verbessert: Ist das abgesendete Formular älter als die aktuelle Formulardefinition (veralteter Seiten-Cache), werden Gäste gebeten, die Seite neu zu laden, statt eine allgemeine Fehlermeldung zu sehen.
1.11.11
- Geändert: Der Buchungsexport zeigt jetzt die Options-Beschriftungen, die Gäste tatsächlich ausgewählt haben (z. B. „Freitag (ab 17:00 Uhr)“), statt roher gespeicherter Werte (friday) — für Radio-, Auswahl- und Checkbox-Gruppen-Felder, auf Basis des Formular-Schnappschusses jeder Buchung.
- Geändert: Der Buchungsexport enthält die interne Ticket-Typ-ID-Spalte nicht mehr; der Ticket-Name ist bereits Teil der Teilnehmerdaten.
1.11.10
- Behoben: Der Buchungsexport (CSV und Pro-Excel) zeigte für alle benutzerdefinierten Formularfelder leere Zellen — nur die Spaltenüberschriften erschienen. Werte aus dem Buchungsformular (z. B. Radio-Auswahlen, Checkbox-Gruppen, Einwilligungen) werden jetzt korrekt exportiert.
- Geändert: Der Buchungsexport legt keine Spalten mehr für Formularelemente an, die nie einen Wert tragen (HTML-Blöcke, der Absende-Button, die Teilnehmer-Steuerelemente).
1.11.9
- Behoben: Event-Tabs (z. B. Gutscheine in Pro) konnten nach dem Anlegen oder Bearbeiten von Einträgen im Dialog eine veraltete Liste zeigen — der Tab-Inhalt kam aus einem fünfminütigen Browser-Cache. Tabs laden jetzt bei jeder Aktivierung frisch.
- Kompatibilität: Getestet mit WordPress 7.1.
1.11.8
- Neu: Event-Karten zeigen „Preis ab:“ mit dem niedrigsten Ticketpreis, wenn ein Event mehrere Ticket-Typen mit unterschiedlichen Preisen hat (übersetzbar über die Texte-Seite).
- Geändert: „Steuer ausblenden“ bei einem Ticket-Typ bedeutet jetzt Endpreis — die Buchung kostet exakt den angezeigten Betrag; für solche Tickets wird keine Steuer berechnet oder gespeichert.
- Geändert: Die Preisübersicht im Buchungsformular reduziert sich auf eine einzelne Gesamt-Zeile, wenn keine Steuer anzuzeigen ist (0-%-Satz oder Endpreis-Tickets); die vollständige Aufschlüsselung kehrt zurück, sobald ein besteuerter Ticket-Typ gewählt wird.
- Behoben: Ausgeblendete Zeilen der Preisübersicht blieben wegen eines CSS-Spezifitätskonflikts sichtbar.
1.11.7
- Behoben: Status-Badges in Teilnehmer- und Buchungslisten (und im CSV-Export) zeigen jetzt übersetzte Beschriftungen statt des rohen englischen Statuswerts.
- Behoben: Die Admin-Werkzeugleiste über Teilnehmer-/Buchungslisten überlappt den Tabellenkopf nicht mehr, wenn ihre Bedienelemente in eine zweite Zeile umbrechen.
- Behoben: Das Setzen von Teilnehmern auf gebucht/storniert/verpasst zeigt jetzt eine passende Erfolgsmeldung statt „Teilnehmer in den Papierkorb verschoben.“; deutsche Papierkorb-Meldungen sagen jetzt „Papierkorb“.
1.11.6
- Neu: Gäste-E-Mails folgen jetzt der Sprache, in der gebucht wurde. Die Formularsprache wird mit jeder Buchung gespeichert; Bestätigungs- und Storno-E-Mails nutzen sie, ersatzweise die Event-Sprache und dann die Website-Sprache. Events haben eine neue Sprach-Einstellung (Standard: Website-Sprache), und das Widget rendert in der Event-Sprache, wenn der Shortcode kein lang-Attribut hat. Admin-Benachrichtigungen bleiben bewusst in der Website-Sprache.
1.11.5
- Erstveröffentlichung im WordPress-Plugin-Verzeichnis.
