Klaro Cookie Consent
DSGVO-konforme Cookie-Verwaltung für Sylius 2 mit Klaro - Admin-Service-Katalog, Channel-Einstellungen, Google Consent Mode v2, Magic-Anchor-Trigger.
Klaro Cookie Consent
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
DSGVO-konforme Cookie-Einwilligung für Sylius-2-Shops, aufgebaut auf Klaro (BSD-2-Clause, KIProtect GmbH). Im Admin pflegst du den Katalog der Drittanbieter-Dienste (Google Analytics, Marketing-Pixel, Embeds, ...), pro Channel legst du fest, wie sich der Dialog verhält und wie er aussieht.
Opt-in von Anfang an: Ein Channel ohne Einstellungs-Zeile verhält sich, als wäre das Plugin nicht installiert, es wird nichts geladen, bis eine Administratorin oder ein Administrator den Channel explizit konfiguriert und aktiviert.
graph TD
A["Shop-Channel"] --> B{"Channel-Konfiguration vorhanden und aktiviert?"}
B -->|"Nein"| C["Nichts wird geladen"]
B -->|"Ja"| D["Banner: Styles, Scripts, Footer-Link"]
D --> E["Besucher entscheidet im Klaro-Dialog"]
E --> F{"Google Consent Mode v2 aktiv?"}
F -->|"Ja"| G["gtag-Consent-Update je Zweck"]
F -->|"Nein"| H["Nur Klaro-interne Entscheidung"]
Dokumentation
| Seite | Inhalt |
|---|---|
| Installation und Betrieb | Installation über Packeton, Update, Migrationen, Deinstallation |
| Konfiguration | Channel-Einstellungen, Service-Katalog, Admin-Grids, Praxis-Beispiele |
| Storefront-Integration | Twig-Funktionen, Hooks, Magic-Anchor, Theme-Hinweise |
| Fehlerbehebung und FAQ | Typische Probleme, bekannte Einschränkungen, häufige Fragen |
| Technische Details | Architektur, Plugin-Struktur, Tabellen, Erweiterbarkeit |
Features
| Feature | Beschreibung |
|---|---|
| Admin-Service-Katalog | Drittanbieter-Dienste mit Zweck, Pflicht-/Standardwert, zu löschenden Cookies und Channel-Zuordnung pflegen |
| Channel-Einstellungen | Speichermethode, Dialog-Verhalten (Pflicht-Zustimmung, Alle akzeptieren, Gruppierung nach Zweck), Farben, Banner-Position und Theme pro Channel |
| Google Consent Mode v2 | Mappt die Zustimmung je Service-Zweck automatisch auf Googles gtag('consent', ...)-Schlüssel, ohne hartkodierte Dienst-Namen |
| Magic-Anchor-Trigger | Jeder Link, der auf #mmd-klaro-cookie-settings endet, öffnet den Dialog erneut |
| Mehrsprachig | Dialogtexte werden über den Symfony-Übersetzer übersetzt und in window.klaroConfig für die aktuelle Shop-Sprache eingebettet |
| Geschützter Pflicht-Eintrag | Ein fest eingebauter "Technisch notwendig"-Eintrag ist immer vorhanden, kann nicht abgewählt werden und braucht keine Zustimmung |
Anforderungen
| Anforderung | Version | Hinweise |
|---|---|---|
| Sylius | ^2.2 | Getestet gegen Sylius 2.2 und 2.3 |
| PHP | ^8.3 | |
| Symfony | ^7.4 | symfony/console, symfony/finder, symfony/routing |
| Datenbank | MySQL 8 / MariaDB | Migrationen nutzen die Doctrine Schema API ohne Plattform-Guard; andere Datenbanken sind nicht verifiziert |
doctrine/migrations |
^3.7 |
Lizenz
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. Das mitgelieferte Klaro-Widget (klaro.js/klaro.css) behält seine eigene BSD-2-Clause-Lizenz (KIProtect GmbH).
Support
Bei Fragen zur Lizenz, technischen Fragen oder Fehlern erreichst du mich unter support@markus-michalski.net.