Artikeldetails Artikelnummer kürzen

Hallo, gesundes Neues erstmal! Wir haben einige Produkte mit Größen und Farben. Die generierten Artikelnummern sind dann entsprechend lang. Z.B. Vaterartikelnr + 1 _Farbe_Größe Kann man die Anzeige der Artikelnummer in den Artikeldetails irgendwie vor dem _ abschneiden, so dass nur Vaterartkelnr+1 angezeigt wird? Gruß Mario

im Template frontend/detail/data.tpl die Ausgabe der Ordernumber suchen und wie folgt ändern sollte das gewünschte Ergebnis bringen: [code] {$position = $sArticle.ordernumber|strpos:"_"} {if $position}

{se name=„DetailDataId“}{/se} {$sArticle.ordernumber|substr:0:$position}

{else}

{se name=„DetailDataId“}{/se} {$sArticle.ordernumber}

{/if} [/code] Findet das erste Vorkommen von „_“ und schneidet die Nummer ab diesem Zeichen ab. Die if-Abfrage verhindert, dass Nummern die kein „_“ enthalten ganz gelöscht werden. Konsequenter Weise sollte man das natürlich auch überall sonst einbauen wo die Nummer angezeigt wird (Warenkorb, Artikelvergleich etc.)

Hallo, in welcher data.tpl mache ich das? Es gibt eine unter default und eine unter emotion. Muss ich da eine in meinem Templateordner anlegen und alles reinkopieren oder reicht es, die Ordernumber da rein zu packen? So sieht das Original aus: {* Order number *} {if $sArticle.ordernumber} {block name=‚frontend_detail_data_ordernumber‘}

{se name=„DetailDataId“}{/se} {$sArticle.ordernumber}

{/block} {/if} In deiner Lösung ist kein Block. Ist das kein Problem? Gruß Mario

Hi, man sollte weder default noch emotion Inhalte überschreiben, da diese bei Updates wieder zurücküberschrieben werden. Also immer eigenes Template von emotion ableiten und dort eigene Dateien anlegen, Parent Datei extenden und ebenfalls nur den benötigten Block kopieren aus emotion bzw. default kopieren und anpassen. Beste Grüße, Edin

Danke für die Info! Nur nochmal zum Verständnis. Wenn der Block in default noch drin ist, überschreibt der Block in meinem Template diese Info oder muss der Block dann aus der Datei in default raus? Gruß Mario

Hi, dein Block überschreibt den Block aus _default. _default oder emotion sollst du niemals anpassen in irgendeiner Weise anpassen. In genau dieser Weise überschreibt emotion das _default Template und die anderen emotions TEmplates das Haupt emotion Template. Beste Grüße

Hallo, habe nun eine data.tpl in meinem emotion_meins Ordner erstellt mit folgendem Inhalt: [code]{{* Detailseite des Mastertemplates erben *} {extends file=„parent:frontend/detail/data.tpl“} {* Order number *} {if $sArticle.ordernumber} {block name=‚frontend_detail_data_ordernumber‘} {$position = $sArticle.ordernumber|strpos:"-"} {if $position}

{se name=„DetailDataId“}{/se} {$sArticle.ordernumber|substr:0:$position}

{else}

{se name=„DetailDataId“}{/se} {$sArticle.ordernumber}

{/if} {/block} {/if}[/code] Allerdings wird das ignoriert vom Shop. Siehe hier: http://sportversand.de/schwimmsport/bad … ene-farben Da sollte nun ja das -GELB abgeschnitten werden. Jemand eine Idee? Und nochmals Danke für die Tips! Gruß Mario

Hallo, danke nochmal für die Tips! Funtkioniert jetzt. Hatte noch einen Typo in der data.tpl. Wo finde ich die Artikelnummer im Warenkorb und Artikel vergleichen? Gruß Mario

Hallo, in der checkout/cart_item.tpl wird die Artikelnummer ja auch angezeigt. Habe daher im eigenen Template einen Ordner checkout und die Datei cart_item.tpl erzeugt mit folgendem Inhalt: [code]{extends file=‘parent:frontend/checkout/cart_item.tpl’} {block name=‘frontend_checkout_cart_item_voucher_details’}

 

{$sBasketItem.articlename}

{$position = $sBasketItem.ordernumber|strpos:"-"} {if $position}

{se name=“CartItemInfoId”}{/se} {$sBasketItem.ordernumber|substr:0:$position}

{else}

{se name=“CartItemInfoId”}{/se} {$sBasketItem.ordernumber}

{/if}
{/block}[/code] Sollte das nicht auch die Nummer vor einem - kürzen? Klappt irgendwie nicht. Gruß Mario

Hallo Mario, prinzipiell ist das schon richtig, aber der falsche block. Schau dir mal diese Datei an: templates/_default/frontend/checkout/cart_item.tpl an Da findest du unter anderem einen block frontend_checkout_cart_item_details, den musst du als Vorlage benutzen.

Danke für den Tip! Hat geklappt. Wo muss das noch überall geändert werden? Gruß Mario

Da gibt es etliche Stellen… Spontan fallen mir noch (mögliche) Stellen ein: Artikelvergleich, Bestellübersicht im Kundenkonto, Bestätigungsfenster wenn man Artikel in den Warenkorb legt, Emails an den Kunden, Merkzettel… Welche Templatedateien das genau sind weiß ich gerade nicht aus dem Kopf.