Warum eine kleine Shopware-Änderung plötzlich viel Arbeit macht
In einem fast fertigen Shop, den ich übernommen habe, sollte nur noch ein Link im Footer geändert werden. Das klingt nach einer kleinen Aufgabe. Normalerweise finde ich den Link in der passenden Einstellung oder im CMS-Element, ändere ihn und prüfe das Ergebnis.
Hier war der Link dort nicht zu finden. Er wurde erst nach dem Laden der Seite mit JavaScript ergänzt. An anderen Stellen lagen Texte in Code-Blöcken und einzelne Seiten hatten eigene Sonderregeln. Die sichtbare Änderung war klein. Die eigentliche Arbeit begann mit der Frage, wo sie wirklich herkommt.
Warum ich zuerst suchen muss
Der zusätzliche Aufwand entsteht nicht durch den Link, sondern davor. Ich muss herausfinden, welche Einstellung, welches CMS-Element, welches Template oder welches Skript die Seite verändert. Erst dann kann ich beurteilen, was sich gefahrlos ändern lässt.
Ohne diese Prüfung wäre die schnelle Lösung oft nur die nächste Sonderregel. Der Link stünde vielleicht an der richtigen Stelle. Gleichzeitig gäbe es aber noch eine weitere versteckte Quelle, die bei einer späteren Theme- oder Shopware-Aktualisierung brechen kann.
Eine klare Reihenfolge hilft
Damit ein Shop pflegbar bleibt, gehe ich bei Anpassungen in dieser Reihenfolge vor:
- Zuerst nutze ich die Einstellungen der vorhandenen CMS- und Theme-Elemente.
- Für Layout, Abstände und Darstellung nutze ich die vorhandenen Bootstrap-Klassen.
- Erst bei wiederkehrendem Bedarf lege ich im Theme eigene, klar benannte CSS-Klassen an.
- Inhalte und Strukturen werden im passenden Twig-Template ausgegeben, nicht nachträglich per JavaScript in die Seite eingefügt.
- Reicht das nicht, entsteht ein eigenes CMS-Element mit einer klaren Aufgabe.
Warum JavaScript hier stört
Ein zusätzlicher Eintrag im Footer gehört zum Beispiel ins passende Template, in die Konfiguration oder in ein CMS-Element. Wird er erst nach dem Laden per JavaScript eingefügt, entsteht eine zweite Inhaltsquelle. Im Backend ist sie nicht sichtbar. Ändert sich die Struktur des Themes, kann der Eintrag fehlen, doppelt erscheinen oder an der falschen Stelle landen.
HTML in einem CMS-Element kann für ein Accordion, eine Tabelle oder eine andere echte Struktur sinnvoll sein. Überschriften, Fließtext, Bilder und einfache Buttons gehören dagegen in die normalen CMS-Felder. Experten-Code ist dafür keine Ablage. Er macht die Quelle einer Änderung nur schwerer auffindbar.
So wird der Shop wieder wartbar
Bei einer Übernahme ordne ich sichtbare Elemente Schritt für Schritt wieder ihrem passenden Pflegeort zu. So wird aus vielen Sonderregeln wieder eine nachvollziehbare Struktur.
Alte Regeln entferne ich erst, wenn ein Ersatz lokal geprüft ist. So bleibt der Shop funktionsfähig und jede Änderung wird wieder nachvollziehbarer. Dann bleibt auch ein neuer Link im Footer eine kleine Aufgabe. Wenn Du bei einer solchen Übernahme Unterstützung brauchst, findest Du unter Shopware-Betreuung den passenden Einstieg.
Mehr dazu: Zur Übersicht