- Статус
- Решено
- Заявлено для
- WPML Multilingual CMS 4.6.9
- Решено в
- WPML 4.6.10
- Теги темы
- Bug
Обзор проблемы
При использовании режима «Переводить все» в WPML запланированные записи WordPress переводятся не полностью. Переводится только заголовок, а содержимое, особенно строки конструктора страниц, не отправляется на перевод.
Обходное решение
Перед продолжением убедитесь, что у Вас есть полная резервная копия Вашего сайта.
Это исправление требует внесения изменений в два плагина: WPML и WPML Перевод строк.
1. Начнем с WPML:
- Откройте файл …/wp-content/plugins/sitepress-multilingual-cms/addons/wpml-page-builders/classes/App.php.
- Найдите строку 36.
- Замените:
return defined( 'WPML_TM_VERSION' ) && ( is_admin() || ( defined( 'XMLRPC_REQUEST' ) && constant( 'XMLRPC_REQUEST' ) ) || wpml_is_rest_request() );
- На:
return defined( 'WPML_TM_VERSION' ) && ( is_admin() || ( defined( 'XMLRPC_REQUEST' ) && constant( 'XMLRPC_REQUEST' ) ) || wpml_is_rest_request() || (defined('DOING_CRON') && DOING_CRON) );
2. Теперь внесем изменения в WPML Перевод строк:
- Откройте файл …/wp-content/plugins/wpml-string-translation/inc/package-translation/inc/wpml-package-translation.class.php.
- Найдите строку 41.
- Замените:
if ( is_admin() || $this->is_doing_xmlrpc() || wpml_is_rest_request() ) { - На:
if ( is_admin() || $this->is_doing_xmlrpc() || wpml_is_rest_request() || (defined('DOING_CRON') && DOING_CRON) ) {