Kategorie Freitextfeld im Listing ausgeben

Hallochen! In manchen Kategorien haben wir genau eine unpassende Anzahl Artikel, so das egal welches Template fuer die Kategorie eingestellt ist, es ein oder zwei leere Plätze hinter dem letzten Artikel aus der Kategorie gibt. Ich wuerde das gerne sinnvoll mit einem Banner fuellen. Dazu eigenen sich ja die Kategoriefreitextfelder. Wie man die Felder ausgibt, findet man in der Wiki: http://wiki.shopware.de/Kategorien_deta … textfelder Wollte die ersten 3 Felder fuer ein Bildlink, Alt Attribut und Ziel-Link benutzen. Nu find ich aber das dazugehörige Template nicht, welches fuer die Ausgabe der einzelnen Artikel verantwortlich ist. Wäre nett wenn mir da jemand auf die Spruenge hilft, habe schon die Listing Ordner in allen 3 relevanten Template Verzeichnissen durchsucht. (habe ein vererbtes Emotion tmpl)

box_article.tpl?

Dank dir, aber das ist es nicht wirklich. Wenn ich es richtig verstehe, ist die Box article sozusagen, programmiertechnisch ausgedruckt, der Inhalt der Schleife, also jeweils nur den Artikel an sich. Ich brauche aber das Template, welches die Schleife generiert, um dann eventuell die Variablen am Ende der Schleife einzubinden. Und logischerweise muss das eine der Listing Templates sein, da es bei einem einspaltigem Listing kein Sinn macht, sondern eben nur wenn da die Luecke bleibt. Ich glaube ich brauche diese listing-1col usw, habe schon den gesamten emotion Ordner danach gesucht. Im default im Listing Ordner war es auch nicht

Im listing/listing.tpl ist die Schleife (foreach) in der dann der jeweilige Artikel über listing/box_article.tpl inkludiert wird.

1 Like

Super, klappt wunderbar! Fuer alle die es auch interessiert, hier ist der Ansatz: listing.tpl im eigenen frontend/listing Ordner anlegen mit folgendem Inhalt: {extends file='parent:frontend/listing/listing.tpl'} {block name="frontend\_listing\_list\_inline"} {\* Actual listing \*} {foreach $sArticles as $sArticle} {include file="frontend/listing/box\_article.tpl" sTemplate=$sTemplate lastitem=$sArticle@last firstitem=$sArticle@first} {/foreach} {if $sCategoryContent.attribute.attribute1} [![{$sCategoryContent.attribute.attribute2}]({$sCategoryContent.attribute.attribute1})]({$sCategoryContent.attribute.attribute3} "{$sCategoryContent.attribute.attribute4}") {/if} {/block} Wenn nun das erste Attribut ausgefuellt ist, werden alle 4 Attribute als Bild, Link, Alt und Title tag ausgeben. Die ist nur ein Anfang, hier fehlt komplett noch die Logig, wenn der User in die Listenansicht umschaltet, und das Bild muss natuerlich die exakte Grösse haben. Versuche gerade die Art des Listings herauszufinden, um die Anzeige der Box zu beeinflussen

1 Like

Hier noch eine ergänzung, wenn jemand das ebenso braucht, hier der momentane Code aus der listing.tpl {extends file='parent:frontend/listing/listing.tpl'} {block name="frontend\_listing\_list\_inline"} {\* Actual listing \*} {foreach $sArticles as $sArticle} {include file="frontend/listing/box\_article.tpl" sTemplate=$sTemplate lastitem=$sArticle@last firstitem=$sArticle@first} {/foreach} {if $sCategoryContent.attribute.attribute1} {if $sTemplate eq 'listing' || $sTemplate eq 'listing-3col' || $sTemplate eq 'listing-2col'} {if $sCategoryContent.attribute.attribute3 && $sCategoryContent.attribute.attribute4} [![{$sCategoryContent.attribute.attribute2}]({$sCategoryContent.attribute.attribute1})]({$sCategoryContent.attribute.attribute3} "{$sCategoryContent.attribute.attribute4}") {else} ![{$sCategoryContent.attribute.attribute2}]({$sCategoryContent.attribute.attribute1}) {/if} {/if} {/if} {/block} Wenn das Freitextfeld 1 ausgefuellt ist, und das Template der Kategorie entweder auf 2, 3 oder vier Spalten einstellt ist, wird ein Bild und ein Link ausgegeben. Feld 1: Bildpfad Feld 2: Alt Text Optional noch der Link Feld 3:relativer hyperlink Feld 4: Title Tag fuer den hyperlink Stellt der Kunde um auf Listenansicht, wird das Bild nicht mehr angezeigt, und wenn der Kunde die Liste im Dropdown sortiert, bleibt das Bannerbild dennoch als letztes.