Zum Hauptinhalt springen
Manche Merkmale sollen den Besucher über die Session hinaus begleiten: die Kundengruppe, die er einmal gewählt hat, oder die Produktwelt, für die er sich interessiert. Dafür legt der Shop ein eigenes Cookie an, in dem Sie beliebige Schlüssel-Wert-Paare ablegen können. Dieses sogenannte Design-Cookie ist verschlüsselt und komprimiert. Was darin steht, kann der Besucher weder lesen noch verändern. Wegweiser: Onsite-Personalisierung
Ohne die Einwilligung des Besuchers wird nichts geschrieben. Liegt für das Design-Cookie keine Zustimmung vor, bleibt DC-CookieData_set() wirkungslos, ohne dass eine Fehlermeldung erscheint. Bauen Sie Ihr Template deshalb so, dass es auch ohne die gespeicherten Merkmale sinnvoll aussieht.

Schreiben und lesen

Ist der Schlüssel schon vorhanden, ersetzt _set() den bisherigen Wert. Ist er neu, kommt er hinzu. Ein Schlüssel kann also nie doppelt im Cookie stehen.
Beide Argumente von _set() müssen gefüllt sein. Ein leerer Wert löscht den Schlüssel nicht, sondern macht das Tag ungültig. Groß- und Kleinschreibung der Schlüssel spielt keine Rolle: Kundengruppe und kundengruppe sind derselbe Eintrag.

Alle Paare durchlaufen

Ohne Parameter ist DC-CookieData() ein Schleifen-Tag über alle gespeicherten Paare.
Innerhalb der Schleife gibt ~DC-CookieData~ den Schlüssel des aktuellen Eintrags aus und ~DC-CookieData_get()~ dessen Wert. Damit lässt sich der Inhalt des Cookies vollständig auflisten, was beim Entwickeln hilfreich ist. Auch das Klammern funktioniert innerhalb der Schleife und prüft dann gegen den Schlüssel des aktuellen Eintrags.

Einen Wert weiterverwenden

DC-CookieData_get() gibt aus, mehr nicht. Soll der Wert in eine Abfrage oder in ein anderes Tag, legen Sie ihn mit _touchKey() bereit und holen ihn über die beiden Touched-Tags ab.
Referenz: DC- (Freie Parameter und Session-Parameter) Der Shop schickt das geänderte Cookie erst mit der nächsten Seite mit. Verlässt der Besucher den Shop direkt nach der Seite, auf der _set() stand, wurde nichts gespeichert. DC-CookieData_cookieHasChanged greift genau dann, wenn auf dieser Seite etwas am Cookie geändert wurde. Darin lässt sich das Cookie zusätzlich im Browser setzen.
Der ausgegebene Wert ist der verschlüsselte Cookie-Inhalt, nicht Ihre Klartextangaben. Er lässt sich nur vom Shop wieder auflösen. Werten Sie ihn deshalb nicht im JavaScript aus.

Grenzen

Der zweite Fall trifft nicht nur den einen zu langen Eintrag, sondern das ganze Cookie: Alle zuvor gespeicherten Merkmale sind dann weg. Legen Sie deshalb kurze Schlüssel und kurze Werte ab, beispielsweise Kürzel statt ausgeschriebener Bezeichnungen, und speichern Sie keine Listen im Cookie.
Das Design-Cookie ist für Merkmale gedacht, nicht für Daten. Alles, was nur innerhalb der Session gelten soll, gehört in einen Session-Parameter DC-SPX, und alles, was zum Kundenkonto gehört, in die Kundendaten.

Die Tags im Überblick

Zulässig sind alle Tags auf allen Templates.

Verwandte Themen