
Перше, з чим ви стикаєтеся під час керування магазином Багатомовний Magento 2 , це переклад усього вашого контенту та цільових сторінок. Однак контент, який ви створюєте та публікуєте на фронтенді, — це не єдиний контент, який потрібно перекласти.
Ось чому вам потрібно створити словник перекладів, щоб сформувати список текстів для перекладу в шаблонах електронних листів, сторонніх розширеннях, JS-файлах тощо. Саме тоді ви можете зіткнутися з помилкою Magento «Пропущена фраза».
Примітка: якщо ви використовуєте та панель «Пошук і переклад» для пошуку тексту для перекладу, ви все одно можете зіткнутися з цією проблемою.
Причини помилки «відсутня фраза» в Magento
Помилка «відсутня фраза» в Magento здебільшого з’являється, коли ви намагаєтеся створити словник перекладу під час виконання такої команди:
bin/magento i18n:collect-phrases --magento
Найчастіше помилка «Пропущена фраза» виникає через сторонні розширення. Вона спричинена порожнім рядком, наприклад, __('') , який система намагається перекласти. Іншими словами, вона з’являється, коли відсутній текст, обгорнутий у функція перекладу .
Як виправити помилку «відсутня фраза» в Magento?
Щоб виправити цю проблему, спочатку потрібно дізнатися, який модуль викликає її. Для цього виконайте таку команду:
grep -rnw . -e "__('')" -e '__("")'
Вона повинна повертати файли, що містять ці порожні рядки, як параметр для функції перекладу.
Примітка: вам слід звернути увагу на папки та файли користувацьких модулів і тем, що не належать Magento.
Якщо команда нічого не повертає, виконайте наступні команди, щоб знайти пропущену фразу
bin/magento i18n:collect-phrases ./app/
bin/magento i18n:collect-phrases ./vendor/
Після того, як ви знайдете ці файли, вам потрібно змінити __('') на'' та__("") на"" у коді файлу.
Після того, як ви внесли необхідні зміни у відповідні файли, ви можете повторно створити словник перекладу. Помилка Magento "Відсутня фраза" має зникнути.
А якщо ви хочете розширити свій словник і автоматично шукати текст для перекладу налаштувати розширення перекладу Magento .