Сышышь ты, выходи сюда,
поговорим !

Как изменить URL результатов поиска в WordPress

Опубликовано: 26.04.2018

видео Как изменить URL результатов поиска в WordPress

Управление аккаунтом AdWords: Как добавить дополнительные ссылки под объявлением?

Перед тем, как начать, вы должны убедиться, что на вашем блоге включены ЧПУ, иначе код ничего делать не будет, для этого переходим в Параметры > Постоянные ссылки в админке.



Итак, по умолчанию URL результатов поиска в WordPress выглядит вот так:

Мы же постараемся придать ему следующий вид:

P.S. эти два варианта запросов — всего лишь пример, не пытайтесь вводить их у меня на блоге, у вас из этого ничего не выйдет, т.к. мой поиск реализован другим способом .


Шорткоды WooCommerce

Реализация через functions.php

Это наиболее удачная реализация, потому что в итоге мы получаем такой же полноценный поиск, с поддержкой кириллицы, а также специальных символов, например фразы в кавычках.

function true_rewrite_search_results_permalink ( ) { global $wp_rewrite ; // обязательно проверим, включены ли чпу, чтобы не закосячить весь поиск if ( ! isset ( $wp_rewrite ) || ! is_object ( $wp_rewrite ) || ! $wp_rewrite -> using_permalinks ( ) ) return ; if ( is_search ( ) && !is_admin ( ) && strpos ( $_SERVER [ 'REQUEST_URI' ] , "/search/" ) === false && ! empty ( $_GET [ 's' ] ) ) { wp_redirect ( site_url ( ) . "/search/" . urlencode ( get_query_var ( 's' ) ) ) ; exit ; } } add_action ( 'template_redirect' , 'true_rewrite_search_results_permalink' ) ; // вторая функция нужна для поддержки русских букв и специальных символов function true_urldecode_s ( $query ) { if ( is_search ( ) ) { $query -> query_vars [ 's' ] = urldecode ( $query -> query_vars [ 's' ] ) ; } return $query ; } add_filter ( 'parse_query' , 'true_urldecode_s' ) ;

Реализация через .htaccess

В этом варианте кириллица и спец. символы работать не будут (используйте 1-й вариант, если поисковые запросы будут на русском). Простое добавление в код второй функции из предыдущего примера не даст никакого эффекта.


SEO оптимизация WordPress сайта для эффективного продвижения в Google и Яндекс

RewriteCond % { QUERY_STRING } \\ ?s = ( [ ^& ] + ) [ NC ] RewriteRule ^ $ / search /% 1/? [ NC ,R ,L ]

Конечно же слово «search» в обоих примерах вы можете изменить на своё усмотрение (обратите внимание, в первом примере два вхождения слова).

Смотрите также

rss