Neu Smarty für Merkmalausgabe auf Produktseite

Desecrator

Sehr aktives Mitglied
20. Februar 2011
1.120
57
Hallo zusammen,

mit welchem Smarty wird die Gesamtliste an Merkmalen auf der Artikelseite ausgegeben?
ich hab schon
{$Artikel->cArtikelmerkmal}
{$Artikel->cArtikelmerkmale}
{$Artikel->cMerkmalfilter}
probiert, aber da rührt sich nix... wie bekomme ich den passenden Befehl raus?

Danke euch 🙂
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
... wie bekomme ich den passenden Befehl raus?
Eine gute Möglichkeit alle verfügbaren Smarty-Variablen auf einer Seite zu untersuchen ist das Plugin "JTL Debug", welches zum Lieferumfang des JTL-Shop gehört.

P.S. Nicht vergessen das Plugin nach erfolgreichem Untersuchen/Testen wieder zu deaktivieren oder generell nur in der Testumgebung verwenden?
 

Desecrator

Sehr aktives Mitglied
20. Februar 2011
1.120
57
das Plugin habe ich genutzt - es zeigt ja hier seitenweise Infos, da lese ich leider nicht raus wie das geht.
es zeigt im Übrigen auch, dass das Plugin nicht jtl4 kompatibel sei 😉

hast du den Smarty auf dem Schirm um die Merkmale anzuzeigen?
bzw. wo würde ich jetzt mittels Plugin sehen können welcher Befehl nötig ist? Alles ziemlich wirr 🙂
 

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.245
463
Emsland
Firma
Notun Delend
Ich bin da leider auch nicht so fit, aber sind die Merkmale nicht in einem Array gespeichert? Dann müsste erstmal mit "foreach" ausgelesen werden.
Im Warenkorb z.B. so:
{foreach from=$Warenkorb->PositionenArr item="wkPos"}
{$wkPos->Artikel->cMerkmalAssoc_arr|dump}
{/foreach}
 

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.245
463
Emsland
Firma
Notun Delend
ok und wie würde das bei der Produktseite aussehen?
Du, das kann ich nicht so eben aus der Hand schütteln, wie die Experten hier. 😎

Ich hab mir eine kleine Entwicklungsumgebung mit Dropper im Warenkorb geschaffen (für div. Einstellungen für Versand etc.) und dabei gesehen, dass die Merkmale über ein Array ausgegeben werden. Wie genau die Abfrage für deine Ansprüche lauten muß...keine Ahnung. Ich wollte nur eine Anregung geben. 😉
 

Desecrator

Sehr aktives Mitglied
20. Februar 2011
1.120
57
wie hast du das mit Dropper denn gemacht? Was genau hast du angestellt um dir eine "Entwicklungsumgebung zu schaffen"? Bei uns gehts hier auch um den Einsatz via Dropper.
 

FPrüfer

Moderator
Mitarbeiter
19. Februar 2016
1.881
529
Halle
das Plugin habe ich genutzt - es zeigt ja hier seitenweise Infos, da lese ich leider nicht raus wie das geht.
Wenn das Plugin aktiviert ist, kannst du auf der jeweiligen Seite mit Strg+Enter die Liste aller verfügbaren Smarty-Variablen anzeigen lassen. Wenn du jetzt in das Suchfeld z.B. "Merkmal" eintippst und Enter drückst, wird die Anzeige auf alle Variablen eingeschränckt, die was damit zu tun haben. Unter "Artikel" siehst du dann z.B. das es dort ein Array oMerkmale_arr, bzw. ein cMerkmaleAssoc_arr gibt. Je nachdem welche Informationen dir lieber sind wären das dann die Variablen ($Artikel->oMerkmale_arr, $Artikel->cMerkmaleAssoc_arr), die du im Template abfragen kannst.
 

_simone_

Sehr aktives Mitglied
17. Februar 2013
3.245
463
Emsland
Firma
Notun Delend
wie hast du das mit Dropper denn gemacht? Was genau hast du angestellt um dir eine "Entwicklungsumgebung zu schaffen"? Bei uns gehts hier auch um den Einsatz via Dropper.
Im Dropper ein plain anlegen.
Smarty evaluieren -> ja
Anzeige -> #content -> anstellen
Seitentyp -> Warenkorb
Kundengruppe -> Test (ist von Vorteil so eine Testkundengruppe einzurichten, wenn noch nicht geschehen)
Testen bis der Arzt kommt^^

Gebe ich z.B. folgenden Code ein:

{foreach from=$Warenkorb->PositionenArr item="wkPos"} {$wkPos->Artikel->cMerkmalAssoc_arr|dump} {/foreach} {$Warenkorb->PositionenArr|dump}

sieht es im WK so aus:

Zwischenablage02.jpg

So kann ich einen oder mehrere entsprechende Artikel auswählen und experimentieren.
Gebraucht hab ich das z.B. exessiv für die Grundpreisdarstellung für den Googleexport ins Merchant-Center. So konnte ich mit
ml, l, kg und g die entsprechende Ausgabe für den Export "basteln".
Wen es interessiert:

<tab>{if $Artikel->fArtikelgewicht == "1" OR $Artikel->fArtikelgewicht == "0.1" OR $Artikel->cLocalizedVPE[0] == ""} {elseif $Artikel->cVPEEinheit == "l"}{$Artikel->fVPEWert}l {elseif $Artikel->cVPEEinheit == "100 ml"}{math equation="x/y" x=$Artikel->fVPEWert y="0.01"}ml {elseif $Artikel->fVPEWert <= "2.5" AND $Artikel->fArtikelgewicht <= "0.25"}{math equation="x/y" x=$Artikel->fVPEWert y="0.01"}g {else}{$Artikel->fVPEWert}kg{/if}<tab>{if $Artikel->fArtikelgewicht == "1" OR $Artikel->fArtikelgewicht == "0.1" OR $Artikel->cLocalizedVPE[0] == ""} {elseif $Artikel->cVPEEinheit == "l"}1l {elseif $Artikel->cVPEEinheit == "100 ml"}100ml {elseif $Artikel->fArtikelgewicht <= "0.250"}100g {else}1kg{/if}<tab>

Im Dropper muss natürlich die Schleife davor und dementsprechend die Artikel benannt werden.


{foreach from=$Warenkorb->PositionenArr item="wkPos"} {if $wkPos->Artikel->fArtikelgewicht == "1" OR $wkPos->Artikel->fArtikelgewicht == "0.1" OR $wkPos->Artikel->cLocalizedVPE[0] == ""} {elseif $wkPos->Artikel->cVPEEinheit == "100 ml"}{math equation="x/y" x=$wkPos->Artikel->fVPEWert y="0.01"}ml {elseif $wkPos->Artikel->cVPEEinheit == "l"} {$wkPos->Artikel->fVPEWert}l {elseif $wkPos->Artikel->fVPEWert <= "2.5" AND $wkPos->Artikel->fArtikelgewicht <= "0.25"}{math equation="x/y" x=$wkPos->Artikel->fVPEWert y="0.01"}g {else}{$wkPos->Artikel->fVPEWert}kg {/if} <tab> {if $wkPos->Artikel->fArtikelgewicht == "1" OR $wkPos->Artikel->fArtikelgewicht == "0.1" OR $wkPos->Artikel->cLocalizedVPE[0] == ""} {elseif $wkPos->Artikel->cVPEEinheit == "100 ml"}100ml {elseif $wkPos->Artikel->cVPEEinheit == "l"}1l {elseif $wkPos->Artikel->fArtikelgewicht <= "0.250"}100g {else}1kg {/if} {/foreach}
 

Kreativkonzentrat

Offizieller JTL-Partner
ZTBanner
26. April 2012
332
94
Dresden
  • Gefällt mir
Reaktionen: _simone_

Desecrator

Sehr aktives Mitglied
20. Februar 2011
1.120
57
Danke dir. ich muss da wohl mehr vom Code einfügen, oder? Denn ansonsten zeigt er mir nur ARRAY im Frontend an.
 

Ähnliche Themen