In Shopware 6 kommt es häufig vor, dass Sie den aktiven Schalter eines benutzerdefinierten Felds ändern müssen, indem Sie den Schalter eines anderen benutzerdefinierten Felds überprüfen. Eine solche Situation tritt sehr häufig auf, wenn Sie widersprüchliche Konfigurationen vermeiden oder sicherstellen möchten, dass sich gegenseitig ausschließende Optionen ausgewählt werden. Dieser Artikel ist eine Anleitung, wie Sie dies mithilfe von JavaScript-Overrides in Shopware 6 erreichen.
Es geht darum, den Wert eines benutzerdefinierten Felds abhängig vom Status eines anderen zu ändern. Genauer gesagt: Ändern Sie ein benutzerdefiniertes API-Kontrollkästchen („custom_api_checkbox_two“), wenn ein anderes Kontrollkästchen („custom_api_checkbox_one“) aktiviert ist, und umgekehrt.
Wir werden diese Funktionalität in JavaScript-Overrides bei Shopware hinzufügen. Mithilfe von JavaScript-Überschreibungen können wir die Codefunktionalität erweitern oder ändern, ohne die Kerndateien direkt zu ändern.
Sehen Sie sich ein Beispielcode-Snippet an, das zeigt, wie Sie dies erhalten:
Erweitern Sie das Verhalten der Komponente „sw-inherit-wrapper“, die sehr häufig zur Verwaltung vererbbarer Einstellungen verwendet wird.
Wir erstellen die Ereignis-Listener in der Methode „setupCheckboxEventListeners“, um Änderungen in unseren beiden benutzerdefinierten Kontrollkästchen zu erkennen.
„handleCheckboxOne“ und „handleCheckboxTwo“ verarbeiten die Änderungen der Kontrollkästchen. Bei einem Schalter wird die Auswahl des anderen Schalters aufgehoben und ein Änderungsereignis ausgelöst, um die Konsistenz aufrechtzuerhalten.
Schritt 1: Kopieren Sie das bereitgestellte JavaScript-Code-Snippet.
Schritt 2. Navigieren Sie zum benutzerdefinierten Theme oder Plugin Ihres Shopware 6-Projekts, wo Sie Zugriff auf JavaScript-Überschreibungen haben.
Schritt 3: Fügen Sie den Code in eine entsprechende JavaScript-Datei ein (z. B. „src/Resources/app/administration/src/overrides/customFieldOverrides.js“).
Schritt 4. Stellen Sie sicher, dass die Datei korrekt in Ihrem Shopware 6-Verwaltungsbereich enthalten und geladen ist.
Schritt 5. Leeren Sie ggf. den Cache und laden Sie den Administrationsbereich neu, um die Änderungen zu übernehmen.
Wenn Sie diese Schritte befolgen und den bereitgestellten Code implementieren, stellen Sie sicher, dass Ihre benutzerdefinierten API-Kontrollkästchen entsprechend funktionieren und deaktivieren Sie eines, wenn das andere aktiviert ist. Dadurch wird das Benutzererlebnis verbessert und unnötige Konfigurationskonflikte innerhalb Ihrer Shopware 6-Umgebung vermieden. Wenn Sie auf andere Probleme stoßen oder Hilfe in anderen Bereichen benötigen, beauftragen Sie einfach einen Shopware-Entwickler , der diese Aufgaben einfacher erledigt.
Grüße! Ich bin Aneesh Sreedharan, CEO von 2Hats Logic Solutions. Bei 2Hats Logic Solutions widmen wir uns der Bereitstellung von technischem Fachwissen und der Lösung Ihrer Probleme in der Welt der Technologie. Unsere Blog-Seite dient als Ressource, in der wir Einblicke und Erfahrungen teilen und wertvolle Perspektiven auf Ihre Fragen bieten.
Abonnieren Sie unseren Newsletter und erfahren Sie mehr über die neuesten digitalen Trends.
Δ