Je cherche un peu de clarté sur ce que add_rewrite_rules
fait.
Si je saisis ou soumets des variables à partir d'un formulaire, est-il supposé changer les variables de requête en une jolie URL?
Actuellement, lorsque je tape la jolie URL, la page agit comme je le souhaite. Lorsque je soumets un formulaire qui redirige vers une page avec les variables de requête dans l'URL, cela fonctionne également très bien. Mais j’avais pensé que si j’avais tapé une URL avec les variables de la requête, elle basculerait vers la jolie URL. Ça ne fait pas ça. Devrait-il? Est-ce que je fais mal?
function add_query_vars($aVars) {
$aVars[] .= 'var_state';
$aVars[] .= 'var_clubs';
}
add_filter('query_vars', 'add_query_vars');
function add_rewrite_rules($aRules) {
$aNewRules = array(
'rv-clubs/([^/]+)/([^/]+)/?$' => 'index.php?pagename=rv-clubs&var_state=$matches[1]&var_clubs=$matches[2]'
);
$aRules = $aNewRules + $aRules;
return $aRules;
}
add_filter('rewrite_rules_array', 'add_rewrite_rules');
Toute aide serait appréciée.
Vous pouvez voir dans cette réponse comment add_rewrite_rules
est utilisé, je ne pense pas que cela s'applique à votre cas.
Ce que vous devez faire est de rediriger les URL générées à partir de la recherche (je suppose quelque chose comme site.com/?s=term
) vers une jolie URL. Cet article le fait http://www.wptavern.com/how-to-make-the-wordpress-search-url-pretty