В темах часто используют строки локализации вида
{$title = $theme_settings.footer_title|default:'[`Contact us`]'}
В значении локализации вместо Contact us используется перевод вида "Зв'яжіться з нами". это приводит к общей ошибке
waException code 0
Next SmartyCompilerException with message '':
Для повторения ошибки можно использовать в шаблоне строчку вида
{$title = $theme_settings.footer_title|default:'[`Côte d'Ivoire`]'}
Либо любую строчку локализации с апострофом.
Исправление https://github.com/webasyst/we...
После исправления сообщение об ошибке выглядит
Syntax Error in template "wa-data/public/site/themes/default/index.html" on line 1 "{$title = $theme_settings.footer_title|default:'Кот-д'Ивуар'}" - Unexpected "�" code 0
Next SmartyCompilerException with message 'Syntax Error in template "wa-data/public/site/themes/default/index.html" on line 1 "{$title = $theme_settings.footer_title|default:'Кот-д'Ивуар'}" - Unexpected "�"':
Что гораздо более информативно.
5 комментариев
В этом коде возникает ошибка, потому что используются одинаковые кавычки и вокруг строки, и внутри неё. Т. е. код содержит синтаксическую ошибку. Если использовать разные кавычки, то ошибки не будет:
Есть какие-то обстоятельства, которые мешают так делать?
Этот код намеренно сделан как пример, чтобы вызывать и показать ошибку.
Первый код
Не вызывает ошибку на русском и английском т.к. в переводе нет символа '
На украинском перевод будет Зв'яжіться з нами и возникает ошибка.
Проблема в том что в ошибке не показано кто проблема, какой шаблон или фраза. В темах нет поиска по всем файлам, тем более нет поиска по шаблонам плагинов.
Попробовали использовать вот такой код в теме дизайна Shop-Script:
На тестовом сервере сообщение об ошибке выглядит так:
Сообщение не пустое. Возможно, это зависит от настроек PHP на разных серверах.
Попробуйте использовать кириллицу в переводе
waException code 0
Next SmartyCompilerException with message ''
Да, так получается, спасибо. Передали информацию разработчикам.