После перехода сайта на OpenCart 3 с PHP 5.6 на 7.4 неправильно читаются пробелы в twig/html

Не читаются пробелы в twig/html OpernCart 3

Совсем недавно переносил сайт с одного хостинга на другой на OpenCart 3. После переноса поползла верстка.
Причина оказалась в том, что неверно в шаблонах twig стали читаться пробелы, точнее перестали читаться.
Дальнейшие разбирательства привели к тому, что виновата смена версий PHP — на старом была 5.6 еще, а на новом минимальная 7.4.
Стал искать дальше, понял, что проблема такая не только у меня существует и самое правильное рабочее решение ее — в изменении небольшого кусочка кода шаблонизатора.
Необходимо в файле Lexer.php (/system/library/template/Twig/) заменить строчку 163

if (isset($this->positions[2][$this->position][0])) {           

на

if (isset($this->positions[2][$this->position][0]) && ($this->options['whitespace_trim'] === $this->positions[2][$this->position][0])) {

И будет вам счастье!
Надеюсь кому-то кроме меня это тоже пригодиться. Пользуйтесь и удачи!

Если эта информация оказалась вам полезной и интересной, то можно поблагодарить автора любой суммой либо по номеру телефона +79807480224 (Сбер, Тинькофф)

Еще больше интересной и полезной информации о SEO, сайтостроении, интернет-маркетинге читайте на моем канале @freelancervit.

@freelancervit

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Есть проект или задача? Готовы обсудить.

Обсудить
В наших проектах мы используем самые актуальные разработки сегодняшней ИТ- и ВЕБ-индустрии. Предлагаем только те методы и сервисы, которые максимально подходят для решения конкретной вашей задачи, без «сливания» бюджета.