Barrierefreiheit-Widget: Erweiterbarkeit
Barrierefreiheit-Widget für Sylius - öffentliche Interfaces zum Dekorieren, Template-Override-Punkt, intern markierte Klassen
Barrierefreiheit-Widget: Erweiterbarkeit
Live Demo: Teste dieses und weitere Plugins live — ohne Installation, ohne Risiko: demo.markus-michalski.net
Öffentliche Erweiterungspunkte
| Service / Interface | Zweck |
|---|---|
WidgetConfigResolverInterface (mmd_sylius_accessibility.widget_config_resolver) |
Löst die Konfiguration für einen Channel-Code auf und liefert null, wenn nichts angezeigt werden soll; dekorierbar, um z. B. eine andere Quelle als die eigene Tabelle anzubinden |
ChannelSettingsRepositoryInterface (mmd_sylius_accessibility.channel_settings_repository) |
Liest/schreibt die Channel-Zeile (findOneByChannelCode, save); dekorierbar für eigene Caching-Strategien |
skip_target.html.twig |
Override-Punkt, falls dein Theme den Inhaltsbereich an anderer Stelle platziert: templates/bundles/MmdSyliusAccessibilityPlugin/shop/skip_target.html.twig in deiner Anwendung (siehe Storefront-Integration) |
Die Twig Hooks aus Storefront-Integration lassen sich mit den üblichen Mechanismen von Sylius Twig Hooks anpassen, etwa um das Widget an anderer Stelle zu rendern.
Interne Klassen
ChannelSettingsFormType,AdminMenuListenerundAccessibilityTwigExtension(Twig-Funktionenmmd_accessibility_config,mmd_accessibility_asset_url,mmd_accessibility_plugin_version) sind im Quellcode als@internalmarkiert: Sie sind nicht Teil der Erweiterungs-API und können sich in einem Minor-Release ändern. Baue nicht gegen ihre Konstruktor-Signatur.
Die Entity ChannelSettings implementiert ChannelSettingsInterface (Sylius ResourceInterface) und ist nicht final, folgt also dem Sylius-üblichen Muster für eigene Resources.