Templatedokumentation JTL-Shop 2 Frontend: artikel.tpl
Aus JTLWiki
Inhaltsverzeichnis |
[bearbeiten] artikel.tpl
Zurück zur Übersicht der Frontenddokumentation
Diese Seite ist für Produktdatails eines ausgewählten Artikels zuständig. Hier kann der Artikel direkt in den Warenkorb gelegt werden und Kunden können Fragen zum Artikel stellen (sofern der Shopbetreiber diese Funktionalität erlaubt).
[bearbeiten] Variablen
Folgende Variablen stehen artikel.tpl zur Verfügung:
| Variablenname | Typ | Beschreibung |
| Artikel | Objekt | Dieses Objekt repräsentiert einen Artikel |
| Artikel->kArtikel | Schlüssel | |
| Artikel->fLagerbestand | Zahl | |
| Artikel->fMindestbestellmenge | Zahl | |
| Artikel->fGewicht | Zahl | |
| Artikel->fUVP | Zahl | Unverbindliche Preisempfehlung |
| Artikel->cName | String | Name des Artikels in der aktuellen Sprache |
| Artikel->cBeschreibung | String | Beschreibung in der aktuellen Sprache |
| Artikel->cAnmerkung | String | Anmerkung des Artikels |
| Artikel->cArtNr | String | Artikelnummer |
| Artikel->cEinheit | String | Einheit des Artikels |
| Artikel->cBarcode | String | EAN / Barcode des Artikls |
| Artikel->cKurzBeschreibung | String | Kurzbeschreibung in der aktuellen Sprache |
| Artikel->cHersteller | String | Hersteller in der aktuellen Sprache |
| Artikel->cHerstellerHomepage | String | URL zur Herstellerhomepage |
| Artikel->cMwstVersandText | String | Zeichenkette "inkl. / exkl. X% USt., zzgl. Versand" |
| Artikel->cMwstText | String | Zeichenkette "inkl. / exkl. X% USt." |
| Artikel->cLieferstatus | String | Lieferstatus in der aktuellen Sprache |
| Artikel->cVorschaubild | Pfad | Pfad zum Vorschaubild des Artikels |
| Artikel->cTopArtikel | Bool | Top-Artikel (Y/N) |
| Artikel->cNeu | Bool | Neu im Sortiment (Y/N) |
| Artikel->Bilder | Objektarray | Bilder zu diesem Artikel |
| Artikel->Bilder[i]->nNr | Zahl | Bildnummer |
| Artikel->Bilder[i]->cPfadKlein | Pfad | Pfad zum Vorschaubild |
| Artikel->Bilder[i]->cPfadNormal | Pfad | Pfad zum Normalbild |
| Artikel->Bilder[i]->cPfadGross | Pfad | Pfad zum großen Bild |
| Artikel->FunktionsAttribute | Array | siehe ####LINK#### |
| Artikel->Attribute | Array | siehe Attribute |
| Artikel->Variationen | ObjektArray | siehe Variationen |
| Artikel->Variationen[i]->kEigenschaft | Schlüssel | |
| Artikel->Variationen[i]->cName | String | Name der Variation |
| Artikel->Variationen[i]->cTyp | String | Auswahltyp der Variation (SELECTBOX, RADIO, FREIFELD) |
| Artikel->Variationen[i]->nSort | Zahl | Sortiernummer |
| Artikel->Variationen[i]->Werte | ObjektArray | |
| Artikel->Variationen[i]->Werte[o]->kEigenschaftWert | Schlüssel | |
| Artikel->Variationen[i]->Werte[o]->cName | String | Name des Variationswertes |
| Artikel->Variationen[i]->Werte[o]->fAufpreisNetto | Zahl | Aufpreis / Rabatt dieses Variationswertes Netto |
| Artikel->Variationen[i]->Werte[o]->fGewichtDiff | Zahl | Gewichtsdifferenz zum Artikel dieses Variationswertes |
| Artikel->Variationen[i]->Werte[o]->cArtNr | String | Artikelnummer dieses Variationswertes |
| Artikel->Variationen[i]->Werte[o]->nSort | Zahl | Sortiernummer |
| Artikel->Variationen[i]->Werte[o]->fLagerbestand | Zahl | Lagerbestand dieses Variationswertes |
| Artikel->Variationen[i]->Werte[o]->fPackeinheit | Zahl | Packeinheit |
| Artikel->Variationen[i]->Werte[o]->cAufpreisLocalized | PreisArray | Aufpreis / Rabatt Netto [1] / Brutto [0] mit Währungsangabe |
| Artikel->Variationen[i]->Werte[o]->cPreisInklAufpreis | PreisArray | Artikelpreis inkl. Aufpreis / Rabatt Netto [1] / Brutto [0] mit Währungsangabe |
| Artikel->Preise | Objekt | Preise dieses Artikels |
| Artikel->Preise->cVKLocalized | PreisArray | EinzelVK Netto[1] / Brutto [0] mit Währungsangabe |
| Artikel->Preise->nAnzahl1 | Zahl | Menge der Staffel 1 |
| Artikel->Preise->nAnzahl2 | Zahl | Menge der Staffel 2 |
| Artikel->Preise->nAnzahl3 | Zahl | Menge der Staffel 3 |
| Artikel->Preise->nAnzahl4 | Zahl | Menge der Staffel 4 |
| Artikel->Preise->nAnzahl5 | Zahl | Menge der Staffel 5 |
| Artikel->Preise->cPreis1Localized | PreisArray | VK Netto[1] / Brutto [0] mit Währungsangabe der Staffel 1 |
| Artikel->Preise->cPreis2Localized | PreisArray | VK Netto[1] / Brutto [0] mit Währungsangabe der Staffel 2 |
| Artikel->Preise->cPreis3Localized | PreisArray | VK Netto[1] / Brutto [0] mit Währungsangabe der Staffel 3 |
| Artikel->Preise->cPreis4Localized | PreisArray | VK Netto[1] / Brutto [0] mit Währungsangabe der Staffel 4 |
| Artikel->Preise->cPreis5Localized | PreisArray | VK Netto[1] / Brutto [0] mit Währungsangabe der Staffel 5 |
| Artikel->SieSparenX | Objekt | Enthält die Differenz des Einzel-VK zum UVP als Betrag und Prozentsatz |
| Artikel->SieSparenX->anzeigen | Bool | (Y/N) |
| Artikel->SieSparenX->nProzent | Zahl | Prozentsatz, der angibt, wieviel man gegenüber dem UVP spart |
| Artikel->SieSparenX->fSparbetrag | Zahl | Betrag, der gegenüber dem UVP gespart wird in Standardwährung |
| Artikel->SieSparenX->cLocalizedSparbetrag | String | Betrag, der gegenüber dem UVP gespart wird mit Währungsangabe |
| Xselling | Objekt | Cross-Selling Artikel Objekt |
| Xselling->Standard | Objekt | Dieses Objekt enthält X-Selling Gruppen mit Artikeln, die über die X-Selling Funktion dem aktuellen Artikel zugewiesen wurden. Siehe ###LINK### |
| Xselling->Standard->XSellGruppen | ObjektArray | Eine X-Selling Gruppe enthält Artikel, die in dieser Gruppe dem aktuellen Artikel zugeordnet wurden. Beispiel einer X-Selling Gruppe: "Zubehör" |
| Xselling->Standard->XSellGruppen->Name | String | Name der X-Selling Gruppe lokalisiert. |
| Xselling->Standard->XSellGruppen->Beschreibung | String | Beschreibung dieser Gruppe |
| Xselling->Standard->XSellGruppen->Artikel | ObjektArray | Array von Artikel-Objekten. Beschreibung siehe Artikel unter artikel.tpl |
| Xselling->Kauf | Objekt | Dieses Objekt enthält Artikel, die unter "Kunden die X gekauft haben, haben auch Y gekauft" stehen sollen |
| Xselling->Kauf->Artikel | ObjektArray | Array von Artikel-Objekten. Beschreibung siehe Artikel unter artikel.tpl |
[bearbeiten] Einstellungen
artikel.tpl stehen folgende Einstellungen zur Verfügung:
[bearbeiten] Anwendungsbeispiele
Artikel anzeigen:
Artikelnummer: {$Artikel->cArtNr}<br>
Artikelname: {$Artikel->cName}<br>
Bild: <img src="{$Artikel->Bilder[0]->cPfadNormal}"><br>
Preis: {$Artikel->Preise->cVKLocalized[$NettoPreise]}
Variationsauswahl des Artikels anzeigen:
{foreach name=Variationen from=$Artikel->Variationen item=Variation}
<select name="eigenschaftwert[]">
{foreach name=Variationswerte from=$Variation->Werte item=Variationswert}
<option value="{$Variationswert->kEigenschaftWert}">{$Variationswert->cName}
{/foreach}
</select>
{/foreach}
Standard X-Selling anzeigen:
{if $Xselling->Standard}
{foreach name=Xsell_gruppen from=$Xselling->Standard->XSellGruppen item=Gruppe}
<div>
{$Gruppe->Name}
</div>
<div >
<table width="100%" cellpadding="5" cellspacing="0">
{foreach name=Xsell_artikel from=$Gruppe->Artikel item=Artikel}
{if $smarty.foreach.Xsell_artikel.index%3==0}
{if $smarty.foreach.Xsell_artikel.index>0}</tr>{/if}<tr>
{/if}
<td align="center">
<a href="{$Artikel->cURL}"><img src="{$Artikel->cVorschaubild}"></a><br>
<a href="{$Artikel->cURL}">{$Artikel->cName}</a>
<br>{#only#} {$Artikel->Preise->cVKLocalized[$NettoPreise]}
<br>{$Artikel->cMwstVersandText}
</td>
{/foreach}
</table>
</div>
{/foreach}
{/if}
"Kunden, die X gekauft haben, haben auch Y gekauft" - Artikel anzeigen:
{if $Xselling->Kauf}
<div>
{#customerWhoBoughtXBoughtAlsoY#}
</div>
<div>
<table width="100%" cellpadding="5" cellspacing="0">
{foreach name=Xsell_artikel from=$Xselling->Kauf->Artikel item=Artikel}
{if $smarty.foreach.Xsell_artikel.index%3==0}
{if $smarty.foreach.Xsell_artikel.index>0}</tr>{/if}<tr>
{/if}
<td align="center">
<a href="{$Artikel->cURL}"><img src="{$Artikel->cVorschaubild}"></a><br>
<a href="{$Artikel->cURL}">{$Artikel->cName}</a>
<br>{#only#} {$Artikel->Preise->cVKLocalized[$NettoPreise]}
<br>{$Artikel->cMwstVersandText}
</td>
{/foreach}
</table>
</div>
{/if}
[bearbeiten] Formulare
Die Produktdetailseite enthält zwei Formulare, einmal den Kauf eines Artikel, einmal ein Formular zur Funktion "Frage zum Produkt", durch die Kunden Fragen direkt zum Produkt an den Shopbetreiber stellen können.
[bearbeiten] Artikel kaufen Formular
Action: index.php
Folgende Formularfelder müssen enthalten sein:
- a: gefüllt mit Artikel-Schlüssel {$Artikel->kArtikel}. Type hidden bietet sich an.
- wke: muss 1 sein. Type hidden bietet sich an.
- show: muss 1 sein. Type hidden bietet sich an.
- {$session_name}: gefüllt mit {$session_id}. Ist notwendig für Browser, die keine Cookies akzeptieren. Type hidden bietet sich an.
- anzahl: Ein Textfeld für die Anzahl der Artikel, die in den Warenkorb gelegt werden sollen. Optimalerweise vorbelegt mit 1.
- eigenschaftwert[]: gefüllt mit Schlüsseln der Eigenschaftswerte {$Variationswert->kEigenschaftWert}. Diese Informationen sind notwendig, um die gewählten Variationen zu übergeben. Select-Feld bietet sich dafür an.
Beispiel:
<form name="inWarenkorb" method="post" action="index.php">
<input type="hidden" name="a" value="{$Artikel->kArtikel}">
<input type="hidden" name="wke" value="1">
<input type="hidden" name="show" value="1">
<input type="hidden" name="{$session_name}" value="{$session_id}">
<!-- ANFANG VARIATIONSABFRAGEN
{foreach name=Variationen from=$Artikel->Variationen item=Variation}
<select name="eigenschaftwert[]">
{foreach name=Variationswerte from=$Variation->Werte item=Variationswert}
<option value="{$Variationswert->kEigenschaftWert}">{$Variationswert->cName}
{/foreach}
</select>
{/foreach}
-->
<input type="text" class="anzahl" name="anzahl" value="1">
<input type="submit" value="kaufen">
</form>
[bearbeiten] Frage zum Produkt Formular
Action: index.php
Folgende Formularfelder müssen enthalten sein:
- a: gefüllt mit Artikel-Schlüssel {$Artikel->kArtikel}. Type hidden bietet sich an.
- fragezumprodukt: muss 1 sein. Type hidden bietet sich an.
- show: muss 1 sein. Type hidden bietet sich an.
- {$session_name}: gefüllt mit {$session_id}. Ist notwendig für Browser, die keine Cookies akzeptieren. Type hidden bietet sich an.
- email: Emailadresse des anfragenden Kunden. Textfeld
- frage: Eine Textarea für die Frage des Kunden.
Nach dem Versand dieses Formular erscheint diesselbe Seite wie zuvor, nun jedoch steht eine neue Variable $frageZumProduktHinweis zur Verfügung. Sie enthält einen Hinweis, ob die Frage zum Produkt erfolgreich übermittelt wurde oder ob das Formular unzureichend ausgefüllt wurde bzw. die angegebene Emailadresse nicht gültig war.
Beispiel:
{if $Einstellungen.artikeldetails.artikeldetails_fragezumprodukt_anzeigen=="Y"}
<form name="fragezumprodukt" action="index.php" method="post">
<input type="hidden" name="a" value="{$Artikel->kArtikel}">
<input type="hidden" name="show" value="1">
<input type="hidden" name="fragezumprodukt" value="1">
<input type="hidden" name="{$session_name}" value="{$session_id}">
<p class="warning">{$frageZumProduktHinweis}</p>
<table width="95%" cellpadding="0" cellpadding="0">
<tr>
<td><p class="login">{#emailadress#}:</p></td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td valign="top"><p class="login">{#question#}:</p></td>
<td><textarea name="frage"></textarea></td>
</tr>
</table>
<input type="submit" value="{#sendQuestion#}">
</form>
</div>
{/if}
