Smarty error: [in xyz ]: syntax error: unrecognized tag ‘var’
Ich teste gerade das Real-Time-Tracking von OneStat.com in einem JTL-Shop. Bei der Einbindung des Tracking-Codes (JavaScript) ist mir ein Flüchtigkeits-Fehler unterlaufen. Die im Titel genannte gekürzte Fehlermeldung findet sich auf der jeweiligen Seite auf der das OneStat-Script einbunden wird. Ich habe das ganze fix unter [JTL-SHOP-TEMPLATE-PATH]/tpl_inc/footer.tpl eingefügt, und bekam den folgenden Fehlercode als Antwort:
Fatal error: Smarty error: [in tpl_inc/footer.tpl line 56]: syntax
error: unrecognized tag 'var' (Smarty_Compiler.class.php,
line 590) in [...]
Das Problem ist der von OneStat gelieferte JavaScript-Code und die im JTL-Shop verwendete Smarty-Template-Engine. Genauer: die geschwungenen Klammern um den Funktionsrumpf des JavaScript Snipets verursachen den Fehler.
Um das zu vermeiden, bietet Smarty die Funktion literal:
{literal}-Tags erlauben es, einen Block wörtlich auszugeben, d.h. von der Interpretation durch Smarty auszuschliessen. Dies ist vor allem für Javascript- oder andere Blöcke nützlich, die geschwungene Klammern verwenden. Alles was zwischen den {literal}{/literal} Tags steht, wird direkt angezeigt.
Also den JavaScript-Code mit literal umschließen, und der Fehler sollte verschwinden:
<!--ONESTAT SCRIPTCODE START-->
{literal}
<script type=”text/javascript”>
<!–
…
OneStat_Pageview();
//–>
</script>
{/literal}
<noscript>
…

May 22nd, 2008 at 10:42 am
Vielen Dank für den {literal}-Tipp!
Oct 14th, 2008 at 11:43 am
OH MAN!!! DANKEEEEEEEEEEE
Nov 24th, 2008 at 12:09 am
sauber, ebenfalls vielen dank von mir - hab mir die zähne ausgebissen an dem stuff ;-) der {literal}-tipp war goldwert !!
Apr 28th, 2009 at 3:37 pm
Danke :) die kleinen sachen sind meistens doch die gemeinsten :D
Jun 12th, 2009 at 2:18 pm
Super! Danke für den Tipp!!! :)
Jun 27th, 2009 at 11:59 am
Man lernt nie aus ;-) Smarty hat doch so seine ganz besonderen Tücken! Danke für den {literal} Tipp, der läßt sich ja bei allem einsetzen, was mit XT-Commerce Shops und Javascript zu tun hat!
Sep 19th, 2009 at 1:32 am
hallo,
nach ca. 10 stunden suchen/testen wie ich den fehler nun wech bekomme, kann ich nur danken das ich diesen beitrag gefunden habe. eigentlich sehr einfach wen man den {literal} trick kennt :-) … ansonsten …. arschkarte und durchdrehen ….
besten dank für diesen beitrag..
Nov 3rd, 2009 at 8:44 pm
Vielen Dank für den Tip
Dec 17th, 2009 at 1:23 am
Vielen Dank - der Tipp ist Gold wert!
Jan 6th, 2010 at 10:39 am
Genialer Tip. Vielen Dank! Hat mir eine Menge Zeit erspart!
Mar 17th, 2010 at 12:27 am
Vielen Dank!
Hatte das problem bei Lansuit v3 mit Google Tracking Code. Nach deinem Trick läuft alles nun wunderbar.