Intereting Posts
Измените размер медиаредактора WP iFrame почему у панихиды неправильные заказы? Отключить страницы авторов для определенных пользователей Скрыть определенные таксономии из списка таксономии, используя 'get_object_taxonomies' Назад к основам: Что отличает нас от фреймворка? опция галереи недоступна в поле для загрузки мультимедиа в странице опций с параметрами costum Редактирование пользовательского запроса var с переменной Эффект персонализированного почтового мета-поля на производительность на почте Ошибка кодирования при использовании французского языка в WordPress Лучший способ объединить Dev и Live Site, чтобы стать промежуточным сайтом? Переместить wordpress в папку без изменения URL-адресов как добавить правило rewrite в wordpress default post type проверьте, обновляется ли WordPress или публикуется сообщение Код обновления виджета не работает Показать последние сообщения

Поиск двух строк в поиске WP

В functions.php меня есть следующий фильтр:

 function checkForAa($query){ if($query->is_search){ $search_string = get_query_var( 's' ); if( stripos( $search_string , 'aa' ) !== false){ $new_string = str_ireplace( 'aa' , 'å' , $search_string ); }elseif( stripos( $search_string , 'å' ) !== false){ $new_string = (str_ireplace( 'å', 'aa' , $search_string )); } if( !empty( $new_string ) ){ $query->set( 's2', $new_string); } } } add_filter('pre_get_posts', 'checkForAa'); 

Однако, когда $new_string не пуст, он не добавляется как новая строка поиска.

Любая помощь или руководство будут высоко оценены.

Solutions Collecting From Web of "Поиск двух строк в поиске WP"

Я не уверен на 100%, что вы пытаетесь выполнить, но вы можете «искать обе строки», просто конкатенируя их:

 function checkForAa($query){ if($query->is_search){ $search_string = $query->get( 's' ); if( stripos( $search_string , 'aa' ) !== false){ $new_string = str_ireplace( 'aa' , 'xxx' , $search_string ); }elseif( stripos( $search_string , 'å' ) !== false){ $new_string = (str_ireplace( 'å', 'aa' , $search_string )); } if( !empty( $new_string ) ){ // Concatenate the strings $query->set( 's', $new_string.' '.$search_string); } } } add_filter('pre_get_posts', 'checkForAa'); $s = 'aabcd'; $query1 = new WP_Query( array( 'posts_per_page' => 3, 's' => $s ) ); var_dump($query1->request); 

Такой поиск станет очень неэффективным, очень быстрым, но с длинными строками.