Products size="small"

Moin,

ich muss in allen Templates in denen products.tpl mit size small eingesetzt wird die Anzahl der gleichzeitig angezeigten Produkte von 4 auf 3 reduzieren, z.B. in last_seen_products.

Wo kann ich das machen?

Im Admin habe ich keine Einstellung dazu gefunden. In den Templates schon gar nicht.

:confused:

Hallo,

http://www.oxid-esales.com/forum/showthread.php?t=1280&highlight=small

und

Hilfreich?

Gruß

Leider nein.

Die Anzeige ist immer vierspaltig, ich brauche sie wegen des blöden Eye-Candies meiner &%§"%§-Designerin aber 3-spaltig.

Es gibt in den Templates keine ZĂ€hlschleifen, sondern es wird ĂŒber alle Items, die zum Beispiel $oView->getAccessoires() zurĂŒckgibt, iteriert. Alle Funktionen, die fĂŒr so eine Ausgabe vorgesehen sind, geben genau 4 Items zurĂŒck.

Gibt es eine zentrale Konstante oder Ini-Variable, die das regelt?

[QUOTE=obsidian;9543]Leider nein.

Die Anzeige ist immer vierspaltig, ich brauche sie wegen des blöden Eye-Candies meiner &%§"%§-Designerin aber 3-spaltig.

Es gibt in den Templates keine ZĂ€hlschleifen, sondern es wird ĂŒber alle Items, die zum Beispiel $oView->getAccessoires() zurĂŒckgibt, iteriert. Alle Funktionen, die fĂŒr so eine Ausgabe vorgesehen sind, geben genau 4 Items zurĂŒck.

Gibt es eine zentrale Konstante oder Ini-Variable, die das regelt?[/QUOTE]
So sind Designer halt


Und nein, das kann man nicht zentral einstellen, wie denn auch


Aber, 2 Möglichkeiten:

Mach die Dinger per CSS doch einfach breiter, so dass nur 3 StĂŒck in eine Zeile passen.

Dann brechen die von alleine um.

Oder:

am Anfang von “_header.tpl” folgenden code einfĂŒgen:


[{PHP}]
define('ENTRIES_PER_LINE',3);
[{/PHP}]

Damit wir die Anzahl der Boxen pro Zeile festgelegt.

In [B]allen [/B]betroffenen Templates [B]nach [/B]"[{include file=“inc/product.tpl”
" folgende Abfrage einfĂŒgen:

[{if ($smarty.foreach.[B]foreach_name[/B].iteration % $smarty.const.ENTRIES_PER_LINE) == 0 && !$smarty.foreach.[B]foreach_name[/B].last}]
<br class=“forced_break” />
[{/if}]

Damit wird geprĂŒft, ob die interne Reihenfolge des aktuell von Smarty bearbeiteten Datensatzes ohne Rest durch 3 teilbar ist, und wenn ja, wird, wenn es [B]nicht [/B]die Ausgabe des [B]letzten [/B]Datensatzes ist, ein break ("<br class=“forced_break” />") ausgegeben, um eine neue Zeile zu erzwingen.

(Über die CSS-Klasse “forced_break” kann man dann noch die Höhe des Abstandes definieren
)

[B]foreach_name[/B] ist der im “[B]name=[/B]”-Parameter Name der Smarty “foreach”-Schleife(n) angegebene Name.

Wenn, wie z.B. in “last_seen_products”, der “[B]name=[/B]”-Parameter in der Schleife fehlt, muss man ihn entsprechend einbauen


Betroffen sind die Template-Dateien:

account_noticelist.tpl
account_wishlist.tpl
basket.tpl
compare.tpl
details.tpl
details_persparam.tpl
list.tpl
search.tpl
start.tpl
thankyou.tpl
wishlist.tpl
dyn\last_seen_products.tpl
inc\recommlist.tpl

Danke - umbrechen tut es im Moment automatisch. Darf nur leider nicht sein.

Function follows form. Design-Award shall follow. Don’t ask me how, I’m just the bleeding tech.

Dann gehen wir mal Source-Code Àndern.

P.S. ist es geschmacklos heute zur Arbeit Thriller zu hören?:wink:

[B]Admin->Stammdaten->Grundeinstellungen->Einstellungen.->Artikel[/B]

Da ist fast die ganze Baggage:
Anzahl Àhnlicher Artikel, die bei einem Artikel angezeigt werden

Anzahl der Artikel, die bei "Kunden, die dies gekauft haben, haben auch das gekauft" angezeigt werden 

Anzahl der Artikel, die bei "Frisch eingetroffen!" (neuste Artikel) angezeigt werden 

Anzahl von Crossselling-Artikeln und Zubehör, die bei einem Artikel angezeigt werden

Und fĂŒr die [B]Last_seen [/B]mĂŒssen wir in core/oxarticlelist.php gehen und in Zeile 121 die 5 gegen eine 4 austauschen.

Zwar schon ein Ă€lterer Beitrag, bin ĂŒber die Suche drauf gestoßen weil ich exakt das selbe Problem hatte.

Und fĂŒr die Last_seen mĂŒssen wir in core/oxarticlelist.php gehen und in Zeile 121 die 5 gegen eine 4 austauschen.

So hab ich’s aber nicht gelöst, in den Core Dateien wĂŒrd ich nichts umschreiben, geht auch direkt im Template last_seen_products.tpl :

...
  [{assign var="CountItems" value=1}]
  [{foreach from=$aLastProducts item=lastproduct}]
    [{if $CountItems < 4}]
    [{include file="inc/product.tpl" size="small" product=$lastproduct altproduct=$_lastproducts_aid sListType='' testid="LastSeen_"|cat:$lastproduct->oxarticles__oxid->value}]
    [{assign var="CountItems" value=$CountItems+1}]
    [{/if}]
  [{/foreach}]
...