Ich bin auf der Suche nach Klarheit darüber, was add_rewrite_rules
macht.
Wenn ich Variablen aus einem Formular eintippe oder abschicke, soll es dann die Abfragevariablen in die hübsche URL ändern?
Derzeit verhält sich die Seite, wenn ich die hübsche URL eingebe, so, wie ich es möchte. Wenn ich ein Formular abschicke, das zu einer Seite mit den Abfragevariablen in der URL weiterleitet, funktioniert es auch einwandfrei. Aber ich hatte gedacht, wenn ich eine URL mit den Abfragevariablen eingetippt hätte, würde sie zur hübschen URL wechseln. Das macht es nicht. Sollte es? Mache ich das falsch?
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');
Jede Hilfe wäre dankbar.
Sie können in diese Antwort sehen, wie add_rewrite_rules
verwendet wird. Ich denke, das trifft überhaupt nicht auf Ihren Fall zu.
Sie müssen die aus der Suche generierten URLs von (ich gehe von site.com/?s=term
aus) zu einer hübschen URL umleiten. Dieser Artikel macht es http://www.wptavern.com/how-to-make-the-wordpress-search-url-pretty