WPML
Статус
Решено
Решено в
4.2.0

Обзор проблемы

Обновление от 13.08.2020:

Начиная с версии WPML 4.2.0, файлы переводов JavaScript (JED) импортируются, и переводы можно корректировать. WPML создает собственные файлы JED с пользовательскими переводами.

Мы попытались реализовать функцию сканирования строк в файлах JS, но отказались от этой идеи из-за технических ограничений:

- Каждая строка должна быть привязана к загруженному файлу JS.

- Загруженный файл обычно является скомпилированным (например, babel / webpack), в котором строки не могут быть корректно обнаружены.

- Даже если бы мы смогли связать скомпилированный файл с исходными файлами, эти исходные файлы обычно исключаются из релизных версий плагинов и тем оформления, поэтому это было бы бесполезно для большинства пользователей.

Если Вы создаете темы оформления или плагины со строками в файлах JS, мы рекомендуем создавать файл POT во время компиляции скрипта JS (см. также https://developer.wordpress.org/block-editor/developers/internationalization/#provide-your-own-translations).

В редакторе блоков WordPress («Gutenberg») применяется новая стратегия перевода строк. Теперь можно переводить строку внутри функции JavaScript. Следствием этой новой функции является то, что все строки соответствующего скрипта должны быть загружены на стороне браузера. Это не соответствует текущей стратегии WPML по сканированию и фильтрации переводов.

Поскольку код редактора блоков быстро развивается, мы решили подождать, пока он не будет интегрирован в WordPress и не получит понятный и стабильный API. Тем временем все переводы строк в редакторе блоков будут загружаться через стандартный API WordPress, независимо от настроек локализации WPML. Из-за этого строки редактора блоков не будут переводиться с помощью модуля WPML Перевод строк.

Это не должно сильно повлиять на пользовательский опыт, поскольку эта новая функция используется только в бэкенде (в редакторе блоков), и она уже в значительной степени переведена сообществом.

Все известные проблемы →