WPML
Статус
Решено автором
Решено в
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 > Перевод строк, снова найдите эти строки и переведите их.
  • Отключите параметр Автоматическая регистрация строк для перевода.

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