Nach fast einem Jahr ...

Nach fast einem Jahr frag ich noch mal nach was aus dem Ticket Shopware Issuetracker geworden ist.

Zumindest in der SW 5.5.10 besteht das Problem immer noch.

Du siehst doch anhand des Tickets, dass es auf „not scheduled“ steht. Eine Community Lösung in Form eines Plugins ist ja sogar in den Kommentaren zu finden.

Die Freitextfelder speichern immer nur die Referenz (ID) zur Entität - genauso wie auch bei Produkten usw. Die Ausgabe in der Storefront muss man dann individualisieren und sich über die ID das Medium holen. Das ist quasi so, seitdem es die Freitextfeld Verwaltung gibt und es ist nicht geplant das zu ändern. 

Entweder legst du dir dafür einen Smarty-Modifier an oder du nimmst das verlinkte Plugin.

Was ist das denn für ein Unsinn? Wenn man im Backend die Funktion anbietet, dann erwartet man im Frontend einen Pfad zum Bild. Und, nein eine richtige Lösung habe ich noch nicht gefunden. Wie sollen das andere Shop-Betreiber machen, wenn das nicht klar irgendwo beschrieben ist?

PS: Der Link geht nicht mehr.

Der Link geht auch noch, der hat da nur eine Klammer mit reingenommen: GitHub - shyim/ShyimAttributeTransformer

Ich glaube man kann sehr darüber streiten - ob ein Shop automatisch die kompletten Entitäten nachladen soll, wenn man bspw. ein Produkt aufruft. Bei einem Bild geht das sicherlich noch, wenn du 30 Bilder hinterlegst, geht es auf die Performance. Das gleiche geht bei Produkten usw. weiter. 

Generell ist das aktuell nicht vorgesehen und das ist der Status Quo. Oben stehen zwei Mögliche Lösungen: Schreib dir einen Smarty Modifier oder nutze das Plugin von Shyim.

Das größere Problem hier ist, dass von Anfang an eine ID zurückgegeben wurde. Jetzt nachträglich hinzuzufügen, dass die Entitäten nachgeladen werden könnte viele Plugins brechen, da sie gerade nummern erwarten. 

Hm, ihr müsst das mal aus Sicht eines Shop-Betreibers sehen:

Er will zum Beispiel (aus welchem Grund auch immer) bei der Detailseite ein zusätzliches Bild. Ok, also denkt er sich “lege ich ein Freitextfeld an” an. Beim Anlegen des Freitextfeldes wird die Auswahl “Media - Shopware\Models\Media\Media” angezeigt. Toll denkt sich der Shop-Betreiber - Bild aussuchen und fertig. Am Ende muss er feststellen, dass sein Vorhaben so gar nicht geht, jedoch von Shopware so suggeriert wird.

Also mir ist das völlig egal, ich finde schon einen Weg, aber was macht der Shop-Betreiber der sich an eure Einstellungen gehalten hat?

Wenn man die Kompatibilität zum alten Verhalten aufrecht erhalten möchte, könnte man ja einen neuen Freitextfeld-Typ einführen. So was wie “Media (mit Ausgabe im Frontend)”.

Nun ja, mit „Media - Shopware\Models\Media\Media“ wird ja diese Funktionalität dem Shop-Betreiber ja schon angeboten. Also verläßt er sich darauf und erwartet eine vernünftige Ausgabe. Stattdessen nur eine Nummer mit der man im Template nichts anfangen kann.

Was das oben erwähnte Plugin macht, weiß ich nicht genau. Es ändert aber nichts am Verhalten oder an der Ausgabe. Getestet im einem SW 5.6. Im Basckend wird hingegen das Bild angezeigt, aber im Frontend kommt dennoch nur eine nichtssagende Nummer zurück.

Backend:

Frontend:

 

Hier sollte man schon mal über eine Lösung nachdenken.