Не работают переводы в письмах (оповещения о товарах) в Magento 2.4.4

Проблема: в письмах модуля ProductAlert не работают переводы, для товаров не подтягиваются картинки (вместо них url изображения товара заменяется на плейсхолдер)

Решение: проблема скрыта глубоко в механизме Magento, а именно то, как она загружает информацию о текущей зоне (area). Из нее в последующем будет вытаскиваться текущая тема, из темы переводы, а так же все связанные с ней слои (layouts).

Не смотря на то, что в самом модуле ProductAlerts storeId передается правильно при отправке письма, необходимая зона загружается неполностью.

Чтобы исправить это, я написал before-плагин:

  1. app/code/<Vendor>/<Module>/Plugin/LoadAreaBeforeSendingEmailPlugin.php

2. app/code/<Vendor>/<Module>/etc/di.xml

Он загружает всю зону целиком, после этого правильно загружается тема, слои и переводы

Связанные issue:

  1. https://github.com/magento/magento2/issues/37507
  2. https://github.com/magento/magento2/issues/35674
  3. https://github.com/magento/magento2/issues/23063

Абакумов Дмитрий

Веб-разработчик и увлеченный турист

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

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