Je souhaite modifier l'URL de recherche de example.com/search/keyword
à example.com/result
ou topic/keyword
.
Vous pouvez remplacer la partie /search/
par quelque chose d'autre, comme /topic/
, mais il sera plus difficile de la supprimer complètement, car cela serait en conflit avec WordPress Pages (est-ce que /banana/
est une page avec le titre "Banana" ou est-ce la page de résultat de la recherche terme "banane"?).
Pour changer la pièce, accrochez-vous à l'action init
et modifiez la variable $wp_rewrite->search_base
:
add_action( 'init', 'wpse21549_init' );
function wpse21549_init()
{
$GLOBALS['wp_rewrite']->search_base = 'topic';
}
Vous devrez placer cet extrait de code dans le fichier function.php
de votre thème ou dans un nouveau fichier que vous créez et que vous placez dans le répertoire /wp-content/plugins/
. Après cela, visitez la page Permaliens setting pour effacer les règles de réécriture.
Cependant, par défaut, lorsque vous soumettez une recherche, vous vous retrouvez sur une URL telle que ?s=Banana
. Il y a des plugins qui changent cela (Ramukar est lié à un, mais il a la partie /search/
codée en dur et a d'autres problèmes), et Hudson Atwell est lié à une approche simple (même trop compliquée: vous n'avez pas besoin d'ajouter la règle de réécriture à Apache, comme WordPress les contient déjà depuis la version 1.5).
Cela pourrait aider. http://h4x3d.com/seo-wordpress-search-with-permalink-structure/