Die Ersparnis aus einem Kundenrabatt anzeigen
Für einen Kunden ist ein globaler Rabatt von 10 Prozent auf rabattfähige Produkte hinterlegt. Auf der Produktdetailansicht soll er sehen, wie viel ihm dieser Rabatt bei diesem Produkt bringt und was er am Ende zahlt. Nötig sind zwei Rechner: Der erste ermittelt den Rabattbetrag, der zweite zieht ihn vom Preis ab.{ST-LoggedIn} sorgt dafür, dass ein nicht angemeldeter Besucher nichts davon sieht, und {A-UserSubTotalDiscount} greift nur, wenn für diesen Kunden überhaupt ein Rabatt hinterlegt ist. Ohne die zweite stünde bei allen übrigen Kunden “Sie sparen: 0,00 €”.
A-UserSubTotalDiscount gibt den Rabatt in Prozent aus, deshalb passt es direkt als Argument von _percent(). Der Rabattsatz muss also nicht fest im Template stehen und ändert sich mit, wenn er im Kundenkonto angepasst wird.
DC-CommercialCalc1 wird hier zweimal gelesen, einmal für die Ausgabe und einmal als Argument des zweiten Rechners. Das ist zulässig, der Wert bleibt stehen, bis Sie ihn mit _set() überschreiben.
Referenz: DC-CommercialCalc1…3 · A-UserSubTotalDiscount() · PR-Price · ST-LoggedIn
Einen Bereich abhängig von einem Wert anzeigen
Die Vergleichs-Tags arbeiten ausschließlich als Klammerung. Der Bereich erscheint, wenn der Vergleich zutrifft. Als Argumente nehmen sie feste Zahlen oder Einzel-Tags, wobei die Tilde des Tags durch ein Dollarzeichen ersetzt wird.Ein Banner für Premiumkunden
Angemeldete Kunden mit einem Rabatt zwischen 3 und 5 Prozent sollen ein Banner sehen.DC-CompareDigitIBE(3,$x$,5) liest sich also als “3 kleiner oder gleich x kleiner oder gleich 5”. DC-CompareDigitIB() schließt die Grenzen aus, DC-CompareDigitIBE() schließt sie ein.
Ein Hinweis ab einem bestimmten Preis
Ab 99,99 Euro soll ein Hinweis erscheinen, beispielsweise auf versandkostenfreie Lieferung.DC-CommercialCalc1…3 schaltet die Preisformatierung für die Dauer der Auswertung von sich aus ab und übernimmt den Wert unverfälscht.
Feste Zahlen im Argument schreiben Sie ohne Tausendertrennzeichen und mit einem Punkt als Dezimaltrenner, also 99.99 und nicht 99,99 oder 1.099,00.
Die Vergleichs-Tags im Überblick
Für den Vergleich von Texten statt Zahlen gibt es
DC-CompareStringInList(). Damit prüfen Sie, ob ein Wert einem anderen entspricht oder in einer Liste vorkommt, beispielsweise ob das Lieferland zu einer Gruppe von Ländern gehört.
Referenz: DC-CompareStringInList() · Grundlagen: Grundlagen zu Tags
