Fehlende Kategorien in Hauptmenü / Sprachshop

Hallo Shopware-Forum,

wir haben folgendes Problem in Shopware 5.4.5:

Wir haben einen Hauptshop (deutsch) und einen Sprachshop (englisch) mit jeweils mehreren Kategorien. Im deutschen Shop funktioniert alles einwandfrei. Im englischen Shop werden je nach aktueller Seite nicht alle Kategorien in der Hauptnavigation angezeigt.

Konkret:

  • wir haben vier Kategorien (A, B, C und D)
  • auf Home: Hauptmenü - „Home“, A, B, C, D (korrekt)
  • Klick auf Kategorie „A“ - Hauptmenü: „Home“, A (Kategorien B,C,D fehlen)
  • Klick auf Kategorie „B“ oder „C“ - Hauptmenü korrekt (wie bei Home)
  • Klick auf Kategorie „D“ - Hauptmenü: „Home“, D (Kategorien A,B,C fehlen

Debugging hat ergeben, dass die Templatevariable „$sMainCategories“ bei den fehlerhaften Darstellungen jeweils nur die aktuell aktive Kategorie enthält. Bei den korrekten Darstellungen enthält sie alle aktiven Kategorien.

Ich bin ziemlich ratlos, woher das kommt. Im Backend gibt es keine Unterschiede - alle Kategorien sind aktiv gesetzt. Cache wurde mehrmals geleert.

Hat jemand eine Idee, in welche Richtung ich weiter debuggen könnte?

 

Aktiviere mal den Sicherheitsmodus und aktiviere das Standard Responsive Theme + Cache leeren. Tritt der Fehler dann auch noch auf?

Anleitung Sicherheitsmodus aktivieren.

Viele Grüße

1 Like

Vielen Dank für den schnellen Tipp! Ändert leider nicht wirklich was - wenn ich nur den Sicherheitsmodus aktiviere, tritt der Fehler genauso auf. Wenn ich dann auch noch aufs Standard-Theme wechsle, bekomme ich bei jeder Kategorie-Übersicht nur noch eine Fehlermeldung (“Oops! An Error has occurred…”).

UPDATE: Nach Wechsel auf Standard-Theme tritt der Fehler jetzt auch genauso auf. Weder Sicherheitsmodus noch Theme-Wechsel machen also einen Unterschied…

OK, Problem hat sich erledigt, ich konnte es selber lösen.

Falls jemand mal ein ähnliches Phänomen haben sollte, hier die Lösung:

  • in der Datenbank-Tabelle „s_categories“ waren im Feld „path“ bei den betroffenen Kategorien falsche IDs eingetragen (wie die dort reingekommen sind ist allerdings unklar - eventuell durch eine fehlerhafte Datensynchronisation)

  • habe die IDs durch die korrekte ID ersetzt, Cache geleert => jetzt funktioniert alles.

 

Danke an alle, die sich Gedanken gemacht haben!