Дістався на просування і обслуговування корпоративний сайт, що працює під управлінням 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-верстки сайту. У вихідному коді ж яндекс-метрики якраз містяться фігурні дужки і «просто так» вставити код лічильника не вийде.
Що робити? Потрібно всього лише обернути код лічильника в спеціальні теги
де замість трьох крапок - ваш код.
Також для еранірованія фігурних дужок в скриптах можна використовувати і конструкцію
Важливий момент: дивіться уважно, який саме шаблон відповідає за виведення коду лічильника Метрики. Для непідготовленого користувача це не завжди очевидно.
На цьому сьогодні все. Успіхів!
Ще цікаві матеріали для вас:
- Масова заміна значень в БД mysql засобами PHPMyAdmin Posted in Кодінг
- RSForm без перезавантаження на Ajax Posted in Кодінг
- Як приховати відображення інформера лічильника Я.Метрікі і Liveinternet Posted in Вебмастеру
- Налаштування 301 редиректу в Hostcms Posted in Вебмастеру