Dlaczego Magento 2 zawiesza tłumaczenie wbudowane podczas wysyłania e-maila transakcyjnego?


Odpowiedzi:


5

Tłumaczenie wbudowane jest wyłączone podczas wysyłania wiadomości e-mail, ponieważ gdy aktywne jest tłumaczenie wbudowane, przechodzi każdy drukowany tekst do przetłumaczenia ( __('Text here'))Magento\Framework\Phrase\RendererMagento\Framework\Phrase\Renderer\Inline::render

Ta metoda dodaje znaczniki do tekstu {{{i }}}jest używana później przez kod JavaScript, który interpretuje je i wyświetla ładne małe przyciski i wyskakujące okienka do tłumaczenia wbudowanego .... ale ...

Działa to tylko wtedy, gdy znajdujesz się w danej witrynie i załadowano plik js.
Ponieważ phtmlszablony mogą być używane w szablonach wiadomości e-mail, jeśli włączone jest tłumaczenie wbudowane, otrzymasz wiadomości e-mail w taki sposób, jakby {{{ some text here }}{{ other text here }}}specjalne znaczniki nie były interpretowane.
Jest to więc środek bezpieczeństwa, abyś nie schrzanił poczty e-mail


3

Gdy tłumaczenie jest dozwolone, ciąg funkcji publicznej zostanie odpowiednio przetłumaczony. Musisz go wyłączyć i wznowić później.

Zapobiega to również problemom z nieprawidłowo włączonym tłumaczeniem wbudowanym.

Dodanie funkcji zawieszenia tłumaczenia wbudowanego wiązało się z konfliktami, przeczytaj:

https://github.com/magento/magento2/pull/11320

https://www.absolute-design.co.uk/services/magento-ecommerce/how-can-i-fix-magento-translation-conflicts/


Nie odpowiada na pytanie w żaden sposób, który rozumiem.
LM_Fielding

Dałem ci moją opinię. To jest dokładnie odpowiedź, której szukasz. Pytasz, czego próbuje uniknąć, a on ma na to dość solidną odpowiedź. Nie głosuj tylko dlatego, że nie rozumiesz.
CompactCode,

„Gdy tłumaczenie liniowe jest dozwolone, ciąg funkcji publicznej zostanie odpowiednio przetłumaczony. Musisz go wyłączyć i wznowić później.” Wstępnie edytuj, więc nie komentuj rzeczy, których nie rozumiesz.
LM_Fielding
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.