web-dev-qa-db-fra.com

Changer l'URL de recherche?

Je souhaite modifier l'URL de recherche de example.com/search/keyword à example.com/result ou topic/keyword.

2
send free sms

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).

3
Jan Fabry
0
Hudson Atwell