Hallo zusammen, weiß jemand, was der einfachste Weg wäre, um die Hersteller URL im Detail Template ausgeben zu lassen? Eingabe der Hersteller URL im Admin: Artikel > Hersteller > Hinzufügen > Feld „URL“ (Link zur Hersteller-Website) Die Ausgabe sollte in folgendem Block im Detailseiten Template erfolgen: [code]{block name=‚frontend_detail_supplier_info‘} {if $sArticle.supplierImg}
[]({url controller=‚listing‘ action=‚manufacturer‘ sSupplier=$sArticle.supplierID} „{“)
{/if} {/block}[/code] Wie wäre nun die beste Herangehensweise um an die Hersteller URL zu kommen? Sollte ich den Detail Controller (function indexAction()) per Plugin (Hook after) erweitern und mir die Hersteller URL selbst aus der Datenbank abfragen und anschließend den Smarty Block mit der neuen Variablen aus dem Controller befüllen? Oder gibt es da eine elegantere Lösung (oder ist es bereits im Standard Implementiert und ich habe es nur nicht gefunden)? So etwas wie: {$sArticle.supplierUrl} Vielen Dank im Voraus für einen Lösungsansatz.
ich würde mir über {debug} alle smarty Variablen ausgeben und schauen ob sie verfügbar ist unter sArticle oder sSupplier und wenn, dann einfach verwenden … wenn sie nicht verfügbar ist, dann ein kleines Plugin schreiben welches sie euch zur verfügung stellt an den jeweiligen stellen
hab das mal eben gemacht und in der Detail seite sind folgende supplier Variablen zurverfüung
anscheinend keine URL … diese muss man sich dann wohl hinzufügen über den hook oder einen postdispatch auf die Detail seite wie du schon vorgeschlagen hast
vielen Dank für Deine Antwort. {debug} hatte ich zwischenzeitlich auch bereits versucht.
Die Lösung war dann ein Plugin mit dem folgenden Hook zu registrieren:
ich hatte für einen anderen Fall den List Product Service von Shopware schon dekorieren müssen und habe mich faulerweise einfach dort eingehängt und mir zusätzlich den Hersteller Link noch bereitstellen lassen. Hätte ich nicht einen solchen Service gehabt, wäre ich den Weg vermutlich nicht extra gegangen…