Keine HTML Entitäten in Smarty Variablen ausgeben

Hallo,

bei der Einrichtung von DataLayern für den Google Tag Manager ist mir aufgefallen, dass in der Debug Konsole und bei Google Analytics keine Umlaute sondern HTML Entitäten (ü, ä etc.) dargestellt werden. Scheinbar wird der |escape Modifier ignoriert? 

Ein Beispiel DataLayer:
{literal}
       
    {/literal}
 

Im übrigen Quellcode, also in Artikelbeschreibungen, Überschriften etc. werden Umlaute ausgegeben. Nur hier wird ein ü beispielsweise durch ü ersetzt, wie kann ich das verhindern? 

Hallo,

Also escape macht genau das… nämlich Sonderzeichen maskieren.
Wenn Du nur Anführungszeichen etc. maskieren willst, versuche es mal mit escape:html.

Weitere Paramter zur Maskierung findest Du hier:
http://www.smarty.net/docsv2/de/language.modifier.escape.tpl

Liebe Grüße,
Michael

Das habe ich mir schon gedacht. Der escape Modifier wird ja auch, wie im Beispiel erkennbar, eingesetzt. Es ist wohl offenbar so, dass der Modifier an der Stelle nicht beachtet wird. Woran kann das liegen? 

Also kurzgefasst:
Ich möchte statt „Früstücksbrötchen“ einfach „Frühstücksbrötchen“ in Google Analytics stehen haben. Übrigens, auch wenn ich „Frühstücksbrötchen“ in den DataLayer reinschreibe, also keine Variable nutze, wird „Früstüsbrötchen“ in Google Analytics ausgegeben.   

Gerade erst gesehen, dass das Forum hier aus dem „& u u m l ;“ ein ü macht. Liest sich dann natürlich etwas seltsam alles. Aber genau die Funktion benötige ich :slight_smile: Ich möchte das aus dem & u u m l ein ü wird, momentan ist es genau anders herum.

Verstehe. Hast Du es schon mit unescape() versucht?
http://www.smarty.net/docs/en/language.modifier.unescape.tpl

 

Ja, mit unescape habe ich es ebenfalls versucht. Leider kein Erfolg. Im

Tag oder den einzelnen Meta Tags wird zum Beispiel auch im Quelltext ein ü wie ein ü ausgegeben, in anderen Texten auf der Seite wird ein ü zum "& u u m l ;". Das scheint auch Smarty Variablen, trotz Modifier, zu betreffen. Wie kann ich das umgehen?

Problem ist gelöst. Ich weiss noch nicht 100% genau woran es lag, aber da keine andere Option mehr offen war, habe ich den Code von der Testumgebung in die Liveumgebung übertragen und da klappts auch mit den Umlauten…