- Статус
- Решено автором
- Решено в
- Blocksy 2.0.26
- Связанный плагин/тема
- Blocksy
- Теги темы
- Compatibility
Обзор проблемы
Если Вы используете виджет Contact info из темы оформления Blocksy и WPML, то, хотя текст внутри этих виджетов можно перевести с помощью плагина WPML Перевод строк, изменения не отображаются на фронтенде.
Обходное решение
Пожалуйста, перед продолжением убедитесь, что у Вас есть полная резервная копия сайта.
Вариант 1
Вы можете создать свой виджет для каждого языка, или:
Вариант 2
- Откройте файл functions.php Вашей темы оформления.
- Добавьте следующий код:
function filter_blocksy_contact_info_titles( $value ) { if( is_array( $value ) ) { $value[3]["ct_options"]["contact_information"][0]["title"] = apply_filters( 'wpml_translate_single_string', $value[3]["ct_options"]["contact_information"][0]["title"], 'blocksy-companion', $value[3]["ct_options"]["contact_information"][0]["title"] ); $value[3]["ct_options"]["contact_information"][1]["title"] = apply_filters( 'wpml_translate_single_string', $value[3]["ct_options"]["contact_information"][1]["title"], 'blocksy-companion', $value[3]["ct_options"]["contact_information"][1]["title"] ); $value[3]["ct_options"]["contact_information"][2]["title"] = apply_filters( 'wpml_translate_single_string', $value[3]["ct_options"]["contact_information"][2]["title"], 'blocksy-companion', $value[3]["ct_options"]["contact_information"][2]["title"] ); } return $value; } add_filter( 'option_widget_blocksy_ct_contact_info', 'filter_blocksy_contact_info_titles', 10, 1 ); - Перейдите на страницу WPML > Перевод строк.
- Прокрутите вниз до раздела Автоматическая регистрация строк для перевода и включите его, затем нажмите Изменить. (Скриншот)
- Выберите Blocksy в текстовых доменах, затем нажмите Применить. (Скриншот)
- Перейдите на главную страницу на фронтенде.
- Вернитесь в WPML > Перевод строк, снова найдите эти строки и переведите их.
- Отключите параметр Автоматическая регистрация строк для перевода.