Grundlagen zu Tags

Ein Tag ist in WEBSALE V8s ein Platzhalter in einem Template, das im Online-Betrieb durch einen bestimmten Wert ersetzt wird. So wird beispielsweise das Tag ~PR-Name~ durch den Produktnamen des gerade ausgewählten Produkts ersetzt.

Um z. B. alle Produkte des Shops mit einem Template darstellen zu können, integrieren wir darin nicht die expliziten Produkteigenschaften, sondern benutzen an dieser Stelle einen Platzhalter: ein WEBSALE Tag. Für jede Produkteigenschaft und andere zu ersetzende Werte, z. B. Firmenname, Kategoriename usw. gibt es jeweils ein spezielles Tag. So muss nicht für jedes Produkt ein eigenes Template angelegt, und etwaige Änderungen müssen nicht auf jedem einzelnen Produkt-Template vorgenommen werden.

WEBSALE unterscheidet folgende Arten von Tags.

Einzel-Tag: ~Tag~

Bereichs-Tag: {Tag}.........{/Tag}

Negatives Bereichs-Tag: {!Tag}.........{/!Tag}

Schleifen-Tag: {@Tag}.........{/@Tag}

Tag-in-Tag

Tag-Längenbeschränkung

Die Verwendbarkeit der einzelnen Tag-Typen finden Sie in der jeweiligen Tag-Beschreibung im Abschnitt "Referenz" dieser Dokumentation:

Referenz: WEBSALE Tag Referenz

 

Einzel-Tag: ~Tag~

Ein Einzel-Tag wird durch einen Wert ersetzt (d. h. der enthaltene Wert wird ausgegeben).

Beispiel:

~PR-Name~ wird durch den Produktnamen ersetzt.

 

Bereichs-Tag: {Tag}.........{/Tag}

Ein Bereichs-Tag umklammert einen Template-Bereich, der von WEBSALE V8s ein- oder ausgeblendet wird, je nachdem, ob das gleichnamige Tag selbst einen Wert enthält oder nicht.

Beispiel:

Während die meisten WEBSALE V8s-Tags fest definiert sind, können Sie z. B. produktbezogene Tags nach Bedarf selbst definieren. Wenn ein frei definiertes Feld Akku irgendeinen Wert enthält, z. B. 500, wird alles, was zwischen der Klammerung {PR-Akku}...{/PR-Akku} steht, eingeblendet. Das kann z. B. eine HTML-Tabellenzeile sein, innerhalb derer ein fester Text steht.

Dieser wird nur dann angezeigt, wenn beim Produkt in dem betreffenden Feld auch ein Wert eingetragen ist. In der Regel wird das Tag für das zugehörige Feld (im Beispiel ~Akku~; die Shop-Software macht aus diesem Tag bei Verwendung auf einer Produkt-Seite ~PR-Akku~) innerhalb der Bereichs-Tags verwendet. So führt z. B. {PR-Akku} Akkuleistung: ~PR-Akku~ mAH {/PR-Akku} zur Anzeige "Akkuleistung: 500 mAH".

 

Negatives Bereichs-Tag: {!Tag}.........{/!Tag}

Ein negatives Bereichs-Tag hat die umgekehrte Logik zu einem Bereichs-Tag. Wenn ein Parameter keinen Wert hat, so wird der negative Bereich angezeigt.

Beispiel:

Wenn ein frei definiertes Feld Akku keinen Wert enthält, wird alles eingeblendet, was zwischen der Klammerung {!PR-Akku}...{/!PR-Akku} steht. Das kann z. B. eine Tabellenzeile sein, die den statischen Text "Gerät ohne Akku" enthält. Dieser Text wird dann nur angezeigt, wenn das entsprechende Produkt-Feld keinen Wert enthält. So führt z. B. {!PR-Akku} Gerät ohne Akku {/!PR-Akku} zur Anzeige Gerät ohne Akku, wenn beim Produkt kein Wert für das Feld Akku angegeben ist.

 

Schleifen-Tag: {@Tag}.........{/@Tag}

In vielen Situationen sollen Bereiche eines Templates mehrfach durchlaufen werden, um beispielsweise alle Produkte einer Kategorie oder sämtliche Unterkategorien einer Kategorie aufzulisten. Dafür stellt WEBSALE V8s  eine Sonderform von Bereichs-Tags, die sogenannten "Schleifen-Tags", zur Verfügung. Schleifen-Tags sind durch ein vorangestelltes At-Zeichen ("@")  gekennzeichnet, z. B. @PR-Data.

Wenn Sie ein Schleifen-Tag verwenden, wird der Bereich so oft wiederholt, wie das mit dem Tag bezeichnete Element im Shop vorhanden ist (Mengenschleife), und es werden jeweils alle Daten des Elements ausgegeben. WEBSALE V8s führt also standardmäßig eine automatische Schleifensteuerung durch und der Designer muss sich nicht darum kümmern, wie viele Schleifendurchläufe erforderlich sind, um alle Elemente eines Typs/einer Menge direkt sequentiell auf einem Template anzuzeigen.

Beispiel:

Um eine Liste mit den Produktdaten aller Produkte einer aktuell gewählten Kategorie anzuzeigen, definieren Sie innerhalb des Bereichs für die Kategorie {CAT-Data} eine Schleife {@PR-Data}. Die Anzahl der Schleifendurchläufe wird automatisch durch die Anzahl der vorhandenen Produkte in dieser Kategorie bestimmt:

...
{CAT-Data}
   {@PR-Data}
      ....
      Anzeige der Produktdaten
      ....
   {/@PR-Data}
{/CAT-Data}
...

Hat WEBSALE V8s eine Schleife mit der erforderlichen Anzahl Wiederholungen durchlaufen, wird mit dem nachfolgenden Template-Code fortgesetzt.

Es können nur geeignete Bereichs-Tags als Schleifen-Tag eingesetzt werden. Ob ein Tag als Schleifen-Tag verwendet werden kann, ist in der Tag-Beschreibung (Referenz) angegeben.

Als Ergänzung zur automatischen Schleifensteuerung (z. B. PR-Data) stellt WEBSALE V8s spezielle DC-Loop-Tags zur Verfügung, mit denen Designer eigene Zähl-Schleifen erstellen können, um Abläufe individuell zu steuern.

 

Tag-in-Tag

Bei manchen Tags ist es möglich, im Argument auch ein weiteres Tag zu verwenden.

Wenn Sie im Argument eines Tags ein beliebiges Einzel-Tag verwenden, müssen Sie die normalen Tag-Kennungen (Tilde-Zeichen) durch Dollar-Zeichen ersetzen.

Beispiel:

Es soll eine Berechnung auf Basis des Produktpreises durchgeführt werden. Das Tag DC-CommercialCalc1_set() ist Tag-in-Tag-fähig, d. h. es kann als Argument ein Tag verwendet werden, in diesem Fall das Tag für den Produktpreis (PR-Price).

...
~DC-CommercialCalc1_set($PR-Price$)~     <!-- Ausgangswert unserer Berechnung ist der Produktpreis -->
~DC-CommercialCalc1_add(3)~              <!-- Addiert wird 3 -->
Ergebnis: ~DC-CommercialCalc1~           <!-- Anzeige des Ergebnisses (Produktpreis + 3) -->
...

 

Besondere Hinweise zur Verwendung von Tags

Tag-Längenbeschränkung

Die maximale Länge eines Tags, inklusive Argumenteliste, beträgt in WEBSALE V8s 128 Zeichen.

Mithilfe der DC-Append-Tags können Zeichenketten, die die maximale Taglänge überschreiten, aufgesplittet und korrekt verarbeitet werden.

Die Vorgehensweise wird hier veranschaulicht:

Referenz: DC-FP1…5_append