No description
- PHP 50.1%
- JavaScript 34.3%
- CSS 11.3%
- HTML 4.3%
| admin | ||
| assets | ||
| includes | ||
| tests/wp-cli | ||
| .gitignore | ||
| capturebarrierefrei.php | ||
| DEVELOPER.md | ||
| readme.txt | ||
| uninstall.php | ||
=== captureBarrierefrei === Contributors: jpboehm Tags: contact form, accessibility, wcag, barrier-free, email routing Requires at least: 6.0 Tested up to: 6.7 Requires PHP: 8.0 Stable tag: 1.0.0 License: GPL-2.0-or-later License URI: https://www.gnu.org/licenses/gpl-2.0.html Barrierefreies Kontaktformular mit WCAG 2.1 AA, Bot-Schutz, Betreff-Routing und HTML-E-Mail-Vorlagen. == Description == **captureBarrierefrei** ist ein barrierefreies Kontaktformular-Plugin für WordPress. Es erfüllt WCAG 2.1 AA und schützt vor Spam-Bots – ohne CAPTCHA, ohne externe Dienste, ohne Cookies. = Kernfunktionen = * **Bot-Schutz ohne CAPTCHA** – Zeitbasierte Analyse und Verhaltens-Scoring (Maus, Tastatur, Scroll, Honeypot). Kein externer Dienst erforderlich. * **Betreff-Routing** – Nachrichten werden automatisch an unterschiedliche E-Mail-Empfänger weitergeleitet, je nach gewähltem Betreff. * **HTML-E-Mail-Vorlagen** – Anpassbare Benachrichtigungs- und Bestätigungsmails mit eigenem Template-Editor im WordPress-Admin. * **Barrierefreiheit (WCAG 2.1 AA)** – Vollständige ARIA-Unterstützung, semantische Labels, Fehlernachrichten per `aria-live`, Fokus-Management und Keyboard-Navigation. * **Mehrere Formulare** – Unbegrenzt viele Formular-Instanzen mit je eigenem Routing, Feldern und Bestätigungsmail. * **Datei-Uploads** – Anhänge werden serverseitig nach Erweiterung und MIME-Typ validiert und per E-Mail weitergeleitet. * **Zero-Dependency** – Kein jQuery, kein externes Framework. Vanilla ES6-Module. * **wp_mail()-Integration** – Nutzt den nativen WordPress-Mail-Versand, kompatibel mit allen SMTP-Plugins. * **Design-Editor** – Farben, Abstände, Rahmen und Schatten visuell konfigurierbar ohne CSS-Kenntnisse. * **Custom CSS** – CodeMirror-Editor für eigene Styles mit Live-Vorschau. = Einbinden per Shortcode = `[capturebarrierefrei]` Optional mit Attributen: `[capturebarrierefrei form="kontakt" title="Schreiben Sie uns" subtitle="Wir antworten innerhalb von 24 Stunden."]` = Shortcode-Attribute = * `form` – Formular-Key aus dem Formular-Builder (Standard: erstes konfiguriertes Formular) * `form_id` – Überschreibt die HTML-ID des Formular-Elements * `title` – Überschrift über dem Formular (optional) * `subtitle` – Untertext unter der Überschrift (optional) = Bot-Schutz = Das Plugin verwendet ein mehrstufiges Scoring-System: 1. **Mindest-Ausfüllzeit** – Das Formular muss mindestens X Sekunden ausgefüllt werden (Standard: 5 s). 2. **Verhaltens-Scoring** – Mausbewegungen, Tastatureingaben und Scroll-Events werden bewertet. 3. **Honeypot-Feld** – Verstecktes Feld erkennt automatisierte Einsendungen. 4. **Score-Schwellwert** – Der Submit-Button wird erst aktiv, wenn der konfigurierte Score erreicht ist (Standard: 40). == Installation == 1. Plugin-Ordner `wp-plugin-cbf` in `/wp-content/plugins/` hochladen. 2. Plugin unter **Plugins → Installierte Plugins** aktivieren. 3. Einstellungen unter **Einstellungen → captureBarrierefrei** vornehmen. 4. Shortcode `[capturebarrierefrei]` auf einer Seite oder in einem Widget einfügen. = Mindestanforderungen = * WordPress 6.0 oder höher * PHP 8.0 oder höher * PHP-Extension `fileinfo` (für MIME-Type-Validierung bei Datei-Uploads) == Frequently Asked Questions == = Funktioniert das Plugin mit SMTP-Plugins wie WP Mail SMTP oder FluentSMTP? = Ja – das Plugin nutzt ausschließlich `wp_mail()`, das durch beliebige SMTP-Plugins konfiguriert werden kann. = Kann ich mehrere Formulare auf einer Seite haben? = Ja. Legen Sie mehrere Formulare im Formular-Builder an und binden Sie sie mit dem `form`-Attribut ein: `[capturebarrierefrei form="kontakt"]` `[capturebarrierefrei form="support"]` Jedes Formular hat eine eigene Bot-Schutz-Instanz und eigenes Routing. = Werden Datei-Anhänge unterstützt? = Ja. Erlaubte Dateitypen und maximale Größe sind in den allgemeinen Einstellungen konfigurierbar. Dateien werden serverseitig nach Erweiterung und MIME-Typ validiert und als Anhang versandt. Temporäre Dateien werden nach dem Versand automatisch gelöscht. = Warum erscheint der Submit-Button erst nach einer Weile als aktiv? = Das ist Teil des Bot-Schutzes. Der Button wird erst aktiv, wenn der konfigurierte Sicherheitsscore erreicht ist – das passiert sobald natürliche Interaktionen (Tippen, Mausbewegungen) erkannt werden. Typisch 1–3 Sekunden. = Ist das Plugin DSGVO-konform? = Das Plugin speichert keine personenbezogenen Daten in der Datenbank und setzt keine Tracking-Cookies. Formulardaten werden ausschließlich per E-Mail übermittelt. Für vollständige DSGVO-Konformität empfiehlt sich ein DSGVO-konformer SMTP-Dienst sowie eine Datenschutzhinweis-Checkbox im Formular. = Wie konfiguriere ich das Betreff-Routing? = Im Tab **Formular** unter **Mail-Logik und Routing** können beliebig viele Routing-Einträge angelegt werden. Jeder Eintrag besteht aus Bezeichnung (angezeigter Text im Dropdown), Wert/Key (interner Schlüssel) und Empfänger-E-Mail. = Kann ich eigenes HTML für das Formular verwenden? = Ja. Im Formular-Builder kann zwischen zwei Modi gewählt werden: **Felder-Builder** (Drag & Drop) und **Individuelles HTML** (eigenes HTML mit automatischer Ergänzung fehlender Pflicht-Attribute). == Screenshots == 1. Admin-Einstellungsseite – Tab Allgemein 2. Formular-Builder mit Live-Vorschau 3. Design-Editor mit Farbauswahl 4. Template-Editor für HTML-E-Mails 5. Frontend-Formular mit Barrierefreiheits-Markup == Changelog == = 1.0.0 = * Initiales Release == Upgrade Notice == = 1.0.0 = Initiales Release. Keine Upgrade-Schritte erforderlich.