Intereting Posts
Пользовательская форма формы поля комментариев Значения пользовательских настроек не сохраняются в пользовательской теме Переписать / категорию / автомобили в / темы / автомобили URL-адрес формата почтового формата пользовательского типа почты? Добавление нескольких неполадок типа сообщения поместить содержание одного сообщения в og: description Система голосования, подключения к базе данных? использование настраиваемых полей в файле content.php моей темы Ошибка базы данных wordpress Пользовательский таксономический родитель из другой таксономии Пользовательская кнопка tinyMCE 4.0 onclick больше не работает Как сделать свой сайт общедоступным? Все перенаправляется на wp-admin Самый простой способ создать два частных раздела, каждый из которых имеет общую учетную запись Измените недавнюю боковую панель сообщений, чтобы показать превью с выпадающими плагинами создание категорий программно

Поиск двух строк в поиске 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); 

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