Intereting Posts
Шаблоны страниц автоматически отображают содержимое страницы-индекса? Что не так с моим wp-запросом, не могу исключить категорию, которую я хочу Существует ли ограничение WP в использовании функции загрузки jQuery? Не удалось сделать короткий код, что не так? Получить список обновлений WP на всех сайтах Показать изображение только для первого липкого сообщения Плагин WordPress. Напишите идентификатор пользователя / персонала как то же, что и идентификатор пользователя WordPress. Документы Microsoft Word на страницы WordPress с добавлением тегов абзаца Стиль сначала 3 сообщения по-разному с контейнером, затем остальные сообщения Контактная форма для перенаправления на страницу не найдена при отправке Как сделать форму переднего конца принимать только определенные значения Почему WordPress добавляет 0 (ноль) к ответу Ajax? Конфликт между слайдером Slick и панель администратора WordPress Как использовать вложенные петли пользовательских типов сообщений для многосайтовых блогов с помощью WP_Query () как получить сообщения по настраиваемому типу сообщений, а затем отобразить пользовательские поля?

Персонализация поиска

при вводе «a» в поле поиска (/? s = a) Я загружен мой шаблон search.php и отображаются все результаты, соответствующие этой букве.

Если я добавлю это в мой .htacess …

 RewriteCond %{REQUEST_URI} ^/$ RewriteCond %{QUERY_STRING} ^s=(.+)$ RewriteRule .* /searchmyblog/%1/? [R,L] 

а затем введите «a» в мой поиск, показывается первый результат моего поиска. Таким образом, не отображается шаблон search.php со всеми результатами, а страница перенаправляется на страницу "mypage.com/somecategory/amore-mio"

Почему это происходит? Я просто хочу переписать обычный /?s= в /search/ или любой другой пользовательский URL.

Есть идеи по этому поводу? Я нашел кучу сообщений в Интернете, но ни один из них, похоже, не соответствует уровню техники или не использует некоторые странные JS-хаки, которые я считаю ненужными.

Идеи по этому поводу?

Solutions Collecting From Web of "Персонализация поиска"

WordPress не знает, что вам нужен путь /searchmyblog/ как база результатов поиска. Поэтому, когда он видит a он пытается найти лучший матч – в вашем случае сообщение, начинающееся с этого письма.

Чтобы исправить это, вы можете изменить мой код для базы разбиения на страницы, чтобы изменить базу поиска:

 if ( ! function_exists( 't5_search_base' ) ) { register_activation_hook( __FILE__ , 't5_flush_rewrite_on_init' ); register_deactivation_hook( __FILE__ , 't5_flush_rewrite_on_init' ); add_action( 'init', 't5_search_base' ); function t5_search_base() { $GLOBALS['wp_rewrite']->search_base = 'searchmyblog'; } function t5_flush_rewrite_on_init() { add_action( 'init', 'flush_rewrite_rules', 11 ); } } 

Теперь ваш .htaccess должен работать.