2012-10-20 3 views
1

J'ai une URL comme ceRéécrire url wordpress

xxxxx.com/?s=&cp_state=Porto&refine_search=yes

et je tente de faire une url comme celui-ci

xxxxx.com/Porto

déjà essayé d'utiliser ce code:

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'); 

Mais ce code me donne une URL comme celle-ci

xxxxx.com/search/

Pourriez-vous me aider s'il vous plaît?

Répondre

0

Je ne peux pas jurer que cela fonctionne, mais vous cherchez quelque chose comme ceci:

add_rewrite_rule('([^/]*)/?','index.php?s=&cpstate=$matches[1]&refine_search=yes','top'); 

Je doute la sagesse de récrire sur la base du premier segment dans l'URL, si vous voulez changer plus de jolis liens pour le reste du site plus tard, vous obtiendrez beaucoup de résultats bizarres. Par exemple, example.com/blog recherche un blog, example.com/search pour rechercher une recherche, etc. ... Si vous voulez quelque chose d'autre, vous pouvez simplement modifier l'expression rationnelle afin qu'elle corresponde à ce que vous voulez.

En savoir plus ici: http://codex.wordpress.org/Rewrite_API/add_rewrite_rule