Как добавить код счётчика яндекс метрики в шаблон Smarty

Достался на продвижение и обслуживание корпоративный сайт, работающий под управлением HOST-CMS одной из самых первых версий. Возникла необходимость установить на сайт счётчик яндекс-метрики. Но при его установке возникла ошибка: «syntax error: unrecognized tag ‘var’«. Почему возникает эта ошибка и как её побороть, расскажу в этом посте.Как известно, ранние версии движка HOST-CMS работают на шаблонах Smarty. Одной из особенностей этого шаблонизатора является его особенная обработка фигурных скобок, которые включены непосредственно в шаблон. Компилятор Smarty обрабатывает эти скобки «как свои», в результате чего возникают ошибки вида

  •  Fatal error: Uncaught exception ‘SmartyCompilerException’ with message ‘Syntax Error in template «…/
  •  string(92) «Smarty error: [in tpl_head:12 line 36]: syntax error: unrecognized tag ‘var’ (Smarty_Compiler.class.php, line 261)»

а также нарушается целостность html-вёрстки сайта. В исходном коде же яндекс-метрики как раз содержатся фигурные скобки и «просто так» вставить код счётчика не получится.

Что делать? Нужно всего лишь обернуть код счётчика в специальные теги

{literal}…{/literal},

где вместо многоточия — ваш код.

Также для эранирования фигурных скобок в скриптах  можно использовать и конструкцию

{ldelim}{rdelim}

Важный момент: смотрите внимательно, какой именно шаблон отвечает за вывод кода счётчика Метрики. Для неподготовленного пользователя это не всегда очевидно.

На этом сегодня всё. Успехов!

Понравилась статья? Поделить с друзьями:
Добавить комментарий

:) :D :( :o 8O :? 8) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

Читайте ранее:
О чём может поведать наложение рук?
Закрыть