Чого намагається уникнути Magento 2, призупинивши вбудований переклад до його надсилання та відновлення після?
Чого намагається уникнути Magento 2, призупинивши вбудований переклад до його надсилання та відновлення після?
Відповіді:
Вбудований переклад вимикається під час надсилання електронної пошти, оскільки, коли активний вбудований переклад, будь-який друкований текст ( __('Text here')
) проходить черезMagento\Framework\Phrase\RendererMagento\Framework\Phrase\Renderer\Inline::render
Цей метод додає деяку розмітку навколо тексту, {{{
і }}}
пізніше використовується деяким кодом javascript, який інтерпретує їх і показує приємні маленькі кнопки та спливаючі вікна для вбудованого перекладу .... але ....
Це працює лише в тому випадку, якщо ви перебуваєте на веб-сайті, про який йдеться, і js завантажений.
Оскільки phtml
шаблони можна використовувати в шаблонах електронної пошти, якщо включений вбудований переклад, ви отримаєте тексти в електронному листі, як-от, {{{ some text here }}{{ other text here }}}
оскільки спеціальна розмітка не буде інтерпретована.
Отже, це міра безпеки, щоб ви не накручували шаблони електронної пошти
Якщо дозволено вбудований трансляція, публічний функціональний рядок буде переведений відповідно. Тож вам потрібно відключити його та відновити пізніше.
Це також запобігає проблемам із неправильно включеним вбудованим перекладом.
Функція додавання для призупинення вкладеного перекладу була пов'язана з конфліктами, будь ласка, прочитайте: