Hallo zusammen,
Wir stehen vor einem mysteriösen Problem mit unserer Navigation, das uns langsam verzweifeln lässt und sich für uns sehr nach einem Caching-Problem anfühlt. Wir hoffen, jemand in der Community hat Ähnliches erlebt und kann uns einen Denkanstoß geben.
Kurzbeschreibung der Situation: Wir betreiben ein Shopware 6.6.x10.5 Shopsystem. Wir haben eine Staging-Umgebung (Branch develop
) und eine Live-Umgebung (Branch main
), die code-seitig (abgesehen von der Plugin-Konfiguration) identisch sein sollten.
Wir haben das horizontale Hauptmenü so angepasst, dass es auf mobilen Geräten weiterhin sichtbar ist und horizontal verschoben werden kann.
Problembeschreibung:
-
Testsystem: Hier funktioniert alles wie erwartet. Das Flyout-Menü auf dem Desktop und das Wischmenü auf dem Handy funktionieren einwandfrei.
-
Live-System: Das Verhalten ist inkonsistent und nicht nachvollziehbar:
-
Auf bestimmten Seiten (z.B. Startseite, einige Erlebniswelten) funktioniert das Flyout-Menü auf dem Desktop nicht.
-
Kurioserweise funktioniert auf denselben Seiten das mobile Wischmenü.
-
Auf anderen Seiten ist es genau umgekehrt: Das Desktop-Flyout funktioniert, das mobile Wischmenü aber nicht.
-
Was wir bereits versucht haben:
-
Code-Vergleich: Wir haben die relevanten Twig-Templates (
navigation.html.twig
) beider Systeme direkt verglichen. Sie sind identisch. -
Plugin-Deaktivierung: Wir haben alle Plugins einzeln auf dem Live-System deaktiviert, um einen Konflikt auszuschließen. Ohne Erfolg.
-
Cache-Löschung: Wir haben den Shopware-Cache aggressiv geleert (
bin/console cache:clear
,bin/console cache:warmup
,bin/console dal:refresh:index
). Das hat das Problem nur vorübergehend oder gar nicht gelöst.
Unsere Vermutung: Wir sind uns ziemlich sicher, dass es sich um ein Caching-Problem handelt, das spezifisch für unsere Live-Umgebung ist. Da der Code identisch ist, muss es eine Diskrepanz in der Umgebung selbst geben:
-
Serverseitiger Cache: Möglicherweise ein Reverse-Proxy (Varnish, Cloudflare o.ä.) oder ein serverseitiger Cache, der ältere Versionen der Seiten ausliefert.
-
Datenbank-Inkonsistenz: Es könnte sein, dass bestimmte Einstellungen oder Cache-Einträge in der Datenbank auf dem Live-System fehlerhaft sind.
Hat jemand schon einmal ein ähnliches Verhalten beobachtet, bei dem die data-flyout-menu-trigger
-Attribute auf manchen Seiten fehlen, obwohl sie im Template vorhanden sind? Was wären die nächsten Schritte, die wir zur Fehlerbehebung versuchen könnten, da die standardmäßige Cache-Löschung nicht funktioniert hat? Gibt es bekannte Fallstricke bei der Live-Umgebung, die ein solches Problem verursachen könnten?
Für jeden Tipp sind wir dankbar!