Überblick
Das Plugin steuert die Sichtbarkeit von Preisen im Storefront nach Login-Status, Kundengruppe und Shopbereich. Nicht eingeloggte Besucher oder bestimmte Kundengruppen sehen anstelle der Preise einen konfigurierbaren Hinweistext mit Login-Link.
Die Steuerung erfolgt serverseitig über einen Subscriber auf das StorefrontRenderEvent, sodass Preise nicht nur visuell versteckt, sondern tatsächlich nicht an den Client ausgeliefert werden. Das Plugin verwendet keine eigenen Entities und benötigt keine Datenbank-Migrationen.
Systemvoraussetzungen
Installation
custom/plugins/BcHidePrices ablegenphp bin/console cache:clearKonfiguration
Die Plugin-Konfiguration befindet sich unter Erweiterungen > Meine Erweiterungen > BC Preise ausblenden > Konfiguration (config.xml).
Allgemein:
Bereiche:
Kundengruppen:
Ausnahmen:
Funktionen
Serverseitige Preisausblendung
Der StorefrontSubscriber reagiert auf das StorefrontRenderEvent und stellt Template-Variablen bereit, die die Sichtbarkeit steuern. Die Prüfung erfolgt in drei Stufen: 1) Gast-Status, 2) Kundengruppen-Zugehörigkeit, 3) Kategorie- und Produktausnahmen.
Template-Variablen (im Twig verfügbar):
Kundengruppen-basierte Steuerung
Die Sichtbarkeit wird pro Kundengruppe konfiguriert. So lassen sich mehrstufige Vertriebsmodelle abbilden.
Kategorie- und Produktausnahmen
Optional können bestimmte Kategorien oder Produkte von der Ausblendung ausgenommen werden.
Events & Hooks
Das Plugin verwendet keine eigenen Event-Klassen. Es reagiert auf folgendes Shopware-Event:
Textbausteine (Snippets)
Storefront-Snippets (src/Resources/snippet/de_DE/bc.hidePrices.de-DE.json):
Verfügbar in DE und EN (src/Resources/snippet/en_GB/bc.hidePrices.en-GB.json).
Datenbank-Tabellen
Das Plugin erstellt keine eigenen Datenbank-Tabellen. Die Steuerung erfolgt vollständig über die Plugin-Konfiguration (SystemConfig) und serverseitige Logik im Subscriber.
Admin-Integration
Das Plugin erweitert die Plugin-Konfiguration im Admin. Es gibt kein separates Admin-Modul. Alle Einstellungen erfolgen über die Standard-Plugin-Konfiguration unter Erweiterungen > Meine Erweiterungen.
Storefront-Integration
Das Plugin modifiziert folgende Storefront-Bereiche über Twig-Template-Overrides:
Templates (src/Resources/views/storefront/):
Alle Templates prüfen die Variable bcHidePricesHideForUser und ersetzen Preise durch den Snippet-Text.