Seltsames Verhalten beim horizontalen Hauptmenü

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:

  1. Code-Vergleich: Wir haben die relevanten Twig-Templates (navigation.html.twig) beider Systeme direkt verglichen. Sie sind identisch.

  2. Plugin-Deaktivierung: Wir haben alle Plugins einzeln auf dem Live-System deaktiviert, um einen Konflikt auszuschließen. Ohne Erfolg.

  3. 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!

Wir haben in der .env.local den cache mit SHOPWARE_HTTP_CACHE_ENABLED=„0“ deaktiviert, nun funktioniert es.