# Hersteller URL in Details Template ausgeben lassen

**URL:** <https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527>\
**Category:** Programmierung\
**Created:** [12. Januar 2016 um 16:13 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527 "2016-01-12T16:13:45Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![7e5439c13c](https://avatars.discourse-cdn.com/v4/letter/7/ba8739/32.png) [@7e5439c13c](https://forum.shopware.com/u/7e5439c13c)\
**Post date:** [12. Januar 2016 um 16:13 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527/1 "2016-01-12T16:13:45Z")

</div>

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}

[![{$sArticle.supplierName|escape}]()]({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. 🙂

---

<div class="post-metadata">

**Author:** ![Bosche](https://avatars.discourse-cdn.com/v4/letter/b/8dc957/32.png) [@Bosche](https://forum.shopware.com/u/Bosche)\
**Post date:** [2. März 2016 um 14:07 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527/2 "2016-03-02T14:07:07Z")

</div>

Hallo,

gibt es hier bereits eine Lösung?! Ich wollte gerne die Hersteller URL im Hersteller-Slider ausgeben lassen.

Mit freundlichem Gruß

Bosche Wägetechnik

---

<div class="post-metadata">

**Author:** ![Sheppard](https://avatars.discourse-cdn.com/v4/letter/s/5fc32e/32.png) [@Sheppard](https://forum.shopware.com/u/Sheppard)\
**Post date:** [2. März 2016 um 16:21 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527/3 "2016-03-02T16:21:00Z")

</div>

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

&nbsp;

hab das mal eben gemacht und in der Detail seite sind folgende supplier Variablen zurverfüung&nbsp;

**supplierName** &nbsp;=\> „“  
&nbsp;&nbsp; **supplierImg** &nbsp;=\> „“  
&nbsp;&nbsp; **supplierID** &nbsp;=\>&nbsp;  
&nbsp;&nbsp; **supplierDescription** &nbsp;=\> „“  
&nbsp;&nbsp; **supplier\_attributes** &nbsp;=\>&nbsp;**Array (0)**

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

---

<div class="post-metadata">

**Author:** ![7e5439c13c](https://avatars.discourse-cdn.com/v4/letter/7/ba8739/32.png) [@7e5439c13c](https://forum.shopware.com/u/7e5439c13c)\
**Post date:** [4. März 2016 um 08:17 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527/4 "2016-03-04T08:17:48Z")

</div>

Hallo Sheppard,

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:  
&nbsp;

```
        $this->subscribeEvent(
            'Supplier::getLink::replace',
            'replaceGetLink'
        );

```

Hallo Bosche,

um die Hersteller URL des Emotion Sliders anzupassen, musst Du ein Plugin erstellen.

Das folgende Event muss hierbei in der install() Methode registriert werden:  
&nbsp;

```
$this->subscribeEvent(
    'Enlight_Controller_Action_PostDispatchSecure_Widgets_Emotion',
    'mySupplierLinkExample'
);

```

Dann erstellst Du die Methode, die dem Slider Deine eigenen Hersteller-URLs zuweist:  
&nbsp;

```
public function mySupplierLinkExample( Enlight_Event_EventArgs $oArgs){
    $oView = $oArgs->getSubject()->View();

    $aEmotions = $oView->getAssign( 'sEmotions'); 

    foreach( $aEmotions as &$aEmotion){
        $aElements = &$aEmotion['elements'];
        foreach( $aElements as &$aElement){
            $aData = &$aElement['data'];
            if( array_key_exists( 'manufacturer_type', $aData)){
                $aValues = &$aData['values'];
                foreach( $aValues as &$aValue){
                    
                    // hier kannst Du Deine eigene Hersteller URL zuweisen, (Beispiel ohne korrekte Formatierung) 
                    $aValue['link'] = 'http://www.example.biz/' . strtolower( $aValue['name']);
                }
            }
        }
    } 
    $oView->assign( 'sEmotions', $aEmotions);
}   

```

&nbsp;

---

<div class="post-metadata">

**Author:** ![Bosche](https://avatars.discourse-cdn.com/v4/letter/b/8dc957/32.png) [@Bosche](https://forum.shopware.com/u/Bosche)\
**Post date:** [4. März 2016 um 08:47 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527/5 "2016-03-04T08:47:54Z")

</div>

Hallo,

Vielen Dank für die Info. Aber denke, dann mache ich mir einen redirect zunutze. Das geht schneller… 😉

Gruß

---

<div class="post-metadata">

**Author:** ![KevinS86](https://avatars.discourse-cdn.com/v4/letter/k/67e7ee/32.png) [@KevinS86](https://forum.shopware.com/u/KevinS86)\
**Post date:** [19. Juni 2017 um 20:48 UTC](https://forum.shopware.com/t/hersteller-url-in-details-template-ausgeben-lassen/33527/6 "2017-06-19T20:48:45Z")

</div>

Hallo Zusammen,&nbsp;

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…&nbsp;

Falls es jemanden interessiert:&nbsp;

> <https://github.com/Kevinschmid86/KSchmidExtendListing/blob/master/KSchmidExtendListing/StoreFrontBundle/ListProductService.php>

Liebe Grüße

Kevin
