私はSEO目的のために私のカスタム検索URLを変更しようとしています。 mydomain.com/?s=query
をmydomain.com/search/query
に変更する方法に関する記事を見つけました。しかし、私はmydomain.com/something/query
のようなカスタム検索URLを持っていることを好みます。
これは達成可能ですか?
助けてくれてありがとう!
それは簡単です。 template_redirect
アクションにこのフックを追加するだけで、検索クエリがNice urlにリダイレクトされます。
function wpse8170_search_url_redirect() {
if ( is_search() && !empty( $_GET['s'] ) ) {
wp_redirect( home_url( "/something/" . urlencode( get_query_var( 's' ) ) ) );
exit;
}
}
add_action( 'template_redirect', 'wpse8170_search_url_redirect' );
.htaccess
ファイルに追加してください。
# search redirect
# this will take anything in the query string, minus any extraneous values, and turn them into a clean working url
RewriteCond %{QUERY_STRING} \\?s=([^&]+) [NC]
RewriteRule ^$ /search/%1/? [NC,R,L]