Vous souhaitez personnaliser l'URL de recherche de votre site WordPress ? Vous pouvez créer dynamiquement une URL personnalisée basée sur le terme de recherche réel que vos visiteurs tapent dans votre barre de recherche.
Avec l'extrait ci-dessous, voici à quoi ressemblera votre URL de recherche :
http://example.com/search/searchterm
Instructions :
Il vous suffit d'ajouter ce code au fichier functions.php de votre thème ou dans un plugin spécifique au site :
function search_url_rewrite_rule() {
if ( is_search() && !empty($_GET['s'])) {
wp_redirect(home_url("/search/") . urlencode(get_query_var('s')));
exit();
}
}
add_action('template_redirect', 'search_url_rewrite_rule');
Remarque : Si c'est la première fois que vous ajoutez des extraits de code dans WordPress, veuillez consulter notre guide sur la manière de copier / coller correctement des extraits de code dans WordPress, afin de ne pas casser accidentellement votre site.
Si vous avez aimé cet extrait de code, pensez à consulter comment connecter Google Analytics à votre site, afin de pouvoir suivre facilement votre recherche sur site.
Merci pour l'extrait, mais il y a un problème lorsque vous essayez de rechercher des mots avec des accents (á, é, í, ó, ú) ou d'autres lettres (ñ, ç, …)
Vous devez décoder le terme de recherche dans les query_vars et dans la search_query. Voici mon code
function you_search_filter($s) { return urldecode($s); }
add_filter(‘get_search_query’, ‘you_search_filter’);
add_filter(‘the_search_query’, ‘you_search_filter’);
add_action(‘parse_query’, ‘you_query_vars_search_filter’ );
function you_query_vars_search_filter( $qvars ) { $qvars->query_vars[‘s’] = urldecode($qvars->query_vars[‘s’]); return $qvars;
}
J'espère que cela pourra être utile
Y a-t-il un avantage SEO à utiliser ceci au lieu de l'URL par défaut ?
Bonne fonction au passage, je vais l'utiliser.
Pour être honnête, je ne pense pas que ce soit une aide majeure pour le SEO, cependant si vous avez activé les liens jolis, cela maintient cet aspect plutôt que ?s= .