- Статус
- Решено автором
- Связанный плагин/тема
- Uncode
- Теги темы
- Compatibility
Обзор проблемы
В теме оформления Uncode при использовании шорткода Posts (uncode_index) были выявлены две проблемы:
- Непредвиденный контент в кодировке base64 отправляется в наш Расширенный редактор переводов.
- Невозможность перевести текст «Read More» внутри шорткода Posts.
Обходное решение
Перед продолжением обязательно сделайте полную резервную копию Вашего сайта.
Вам необходимо внести 2 исправления:
Часть I
- Перейдите на страницу WPML > Настройки > Пользовательская конфигурация XML.
- Добавьте следующий XML-код:
<wpml-config> <shortcodes> <shortcode> <tag>uncode_index</tag> </shortcode> </shortcodes> </wpml-config>
Часть II
- Откройте файл …/wp-content/themes/uncode/vc_templates/uncode_index.php.
- Найдите строку 2558.
- Замените:
if (isset($item_prop['read_more_text'])) { $block_data['read_more_text'] = $item_prop['read_more_text']; } - На:
if (isset($item_prop['read_more_text'])) { $block_data['read_more_text'] = $item_prop['read_more_text']; // WPML Workaround for compsupp-7136 if ( class_exists('Sitepress') ) { $string = $block_data['read_more_text']; $textdomain = 'WordPress'; $string_name = 'WPML Workaround : '.substr($string, 0, 20); $wpml_default_lang = apply_filters('wpml_default_language', NULL ); $wpml_current_lang = apply_filters( 'wpml_current_language', NULL ); if ($wpml_default_lang == $wpml_current_lang ) { do_action( 'wpml_register_single_string', $textdomain, $string_name, $string ); } // Apply the translation to the string $block_data['read_more_text'] = apply_filters('wpml_translate_single_string', $string , $textdomain, $string_name); } }