【发布时间】:2016-03-11 19:49:11
【问题描述】:
我目前正在处理 Wordpress 中的 URL 重写。
我正在尝试重写此 URL:
http://localhost/adorable-nails/behandelingen-tarieven/?category=gelnagels
收件人:
http://localhost/adorable-nails/behandelingen-tarieven/gelnagels
我在主题的functions.php中添加了以下代码:
function add_query_vars_filter( $vars ){
$vars[] = "category";
return $vars;
}
add_filter( 'query_vars', 'add_query_vars_filter' );
function custom_rewrite_rule() {
add_rewrite_rule('^behandelingen-tarieven/([^/]*)/([^/]*)/?','index.php?pagename=behandelingen-tarieven&category=$matches[1]','top');
}
add_action('init', 'custom_rewrite_rule', 10, 0);
所以似乎正在发生的事情是,当我尝试转到 http://localhost/adorable-nails/behandelingen-tarieven/gelnagels 时,它会将我重定向到帖子名称中包含“gelnagels”的帖子,我当前的永久链接设置设置为:http://localhost/adorable-nails/sample-post/
所以我想知道是否有避免重定向,还是我必须选择普通的永久链接设置并自己重写所有规则?
提前致谢!
【问题讨论】:
-
您的正则表达式有 2 个可能的匹配项,而 url 只提供了一个。将
^behandelingen-tarieven/([^/]*)/([^/]*)/?更改为^behandelingen-tarieven/([^/]*)/?并保存您的永久链接配置是否可以解决您的问题? -
我已经写了一个答案。很高兴我能帮忙:)
标签: wordpress mod-rewrite rewrite