Shopware 6: Neue Integration von Bildern im Theme unnötig kompliziert

Liebes Shopware Team,

die neue Art Bilder im Theme bei Shopware 6 zu implementieren ist extrem unnötig kompliziert geworden.

Themes sind ja jetzt auch Plugins und genaue diese Verknüpfung schafft unnötige Probleme bei der Frontend Entwicklung.

  • Icons sollen laut Doku unter
    CUSTOMTHEME/src/Resources/app/storefront/dist/assets/icon/ abgelegt werden.

  • Laut dem Standard Storefont Ordner unter Platform soll das Vorschaubild dann unter CUSTOMTHEME/src/Resources/app/storefront/dist/assets/defaultThemePreview.jpg

Hier fangen die Probleme schon an. „src/“ steht für Quelle und ist der Roh - Code vor minification. „dist/“ steht für Distribution und sollte die minimierte / verkettete Version sein. Aber schauen wir mal weiter:

  • Das Plugin Icon soll dann dann unter CUSTOMTHEME/src/Resources/config/plugin.png abgelegt werden.

  • Nachdem ein neues Template generiert wurde, gibt es aber nur den Ordner, welcher auch in der theme.json referenziert ist CUSTOMTHEME/src/Resourses/app/storefront/src/assets

Wieso muss dann jetzt nochmal ein CUSTOMTHEME/src/Resourses/public Ordner erstellt werden!?

Aber das ist noch nicht genug, es muss zusätzlich auch noch ein Befehl ausgeführt werden, um die Bilder überhaupt im Frontend einbinden zu können! bin/console assets:install

Dieser Befehl hat dann zur Folge, dass die Bilder unter shopware-root/public/bundles/customtheme/ kopiert werden, was man auf keinen Fall händisch tun sollte :roll_eyes:

Hierbei wird schnell klar, dass die ganze Integration der Bilder nicht nur ineffizient, sondern auch vollkommen verwirrend ist. Diese Assets Implementierung mag so vielleicht irgendwie funktionieren, aber sie ist leider nur aus einer komplexen Backend-Sicht gedacht und nicht für den täglichen Gebrauch eines Theme-Entwicklers geeignet.

Ich finde es sehr schade, dass Shopware 6 sich hier so verschlechtert hat im Gegensatz zum Vorgänger und die tiefe Veerschachtelung der kompletten Theme Struktur die Entwicklung enorm erschwert.

Es wäre daher für viele Entwickler wünschenswert, dass die aktuelle Struktur nochmal überdacht und in Zukunft möglichst mal vereinheitlicht wird, damit Bilder (Assets) nicht an so vielen verschiedenen Stellen gepflegt und eingebunden werden müssen.

LG,
Patrik

Quellen:
Standard Storefront Template
SwagPlatformDemoData Plugin
https://developer.shopware.com/docs/guides/plugins/themes/add-assets-to-theme
https://developer.shopware.com/docs/guides/plugins/plugins/storefront/add-custom-assets
https:// developer.shopware .com/docs/guides/plugins/themes/add-icons

PS: Zudem ist die Doku „add-custom-assets“ auch fehlerhaft und das <img ist nicht geschlossen, was so nicht valide ist.