- Статус
- Решено автором
- Решено в
- JetSearch 3.2.0
- Связанный плагин/тема
- JetSearch
- Теги темы
- Compatibility
Обзор проблемы
При совместном использовании WPML и плагина JetSearch в области предварительного просмотра результатов поиска отображаются записи только на языке по умолчанию, даже если пользователь переключается на другой язык и ищет запись на этом языке.
Обходное решение
Пожалуйста, перед продолжением убедитесь, что у Вас есть полная резервная копия Вашего сайта.
- Во-первых, откройте файл …/wp-content/plugins/jet-search/includes/ajax-handlers.php.
- Найдите строку 61.
- Сразу под ней добавьте:
//WPML workaround for compsupp-6886 - Part I if ( isset( $_GET[ 'wpml_lang' ] ) ) { do_action( 'wpml_switch_language', $_GET[ 'wpml_lang' ] ); // switch the content language } - Во-вторых, откройте файл …/wp-content/plugins/jet-search/includes/assets.php:
- Найдите строку 151.
- Сразу под этой строкой:
$this->localize_data['rest_api_url'] = get_site_url() . "/wp-json/jet-search/v1/search-posts";
- Добавьте:
//WPML workaround for compsupp-6886 - Part II $wpml_current_lang = apply_filters( 'wpml_current_language', NULL ); if ( $wpml_current_lang ) { $this->localize_data['rest_api_url'] = add_query_arg( 'wpml_lang', $wpml_current_lang, $this->localize_data['rest_api_url'] ); }