WPML
Статус
Решено
Связанный плагин/тема
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) для перевода страниц, что позволяет избежать проблем, связанных с ручным переводом, и гарантирует, что все элементы страницы, включая загруженные из библиотеки, будут корректно отображаться на нужном языке.

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