- Статус
- Решено
- Связанный плагин/тема
- Divi
- Теги темы
- Compatibility
Обзор проблемы
Пользователи темы оформления Divi столкнулись с проблемой, при которой переведённые элементы библиотеки некорректно отображаются в конструкторе Divi, если страница содержит пользовательский шорткод. В частности, это происходит при использовании функции «Добавить из библиотеки» во время редактирования переведённых страниц в конструкторе Divi. Библиотека отображает контент на языке по умолчанию вместо языка перевода.
Обратите внимание, что рекомендуемый рабочий процесс для перевода сайтов, созданных с помощью Divi, — это использование Расширенного редактора переводов (ATE).
Обходное решение
Пожалуйста, перед продолжением убедитесь, что у Вас есть полная резервная копия Вашего сайта.
- Откройте файл functions.php Вашей темы оформления.
- Добавьте следующий код:
- Вместе с:
// WPML: Workaround for compsupp-7452 function wpml_compsupp7452_fix_divi_editor_ajax_lang() { if ( isset($_POST['is_fb_preview']) && $_POST['is_fb_preview'] == 'true' ) { foreach ($_COOKIE as $name => $value) { if (strpos($name, 'wp-wpml_current_admin_language') === 0) { $my_current_lang = apply_filters( 'wpml_current_language', NULL ); if ( $my_current_lang != $value ) { do_action( 'wpml_switch_language', $value); } break; } } } } add_action('et_builder_structure_elements_loaded', 'wpml_compsupp7452_fix_divi_editor_ajax_lang');
Альтернативное обходное решение
Используйте Расширенный редактор переводов (ATE) для перевода страниц, что позволяет избежать проблем, связанных с ручным переводом, и гарантирует, что все элементы страницы, включая загруженные из библиотеки, будут корректно отображаться на нужном языке.