添加rewrite_rule不起作用

时间:2016-11-16 13:22:28

标签: wordpress

我在主题中制作主/详细模式页面。 当用户点击用户名时,他们将被带到包含该用户完整信息的页面。我通过在母版页上放置一个链接然后使用$_GET在网址中包含所述用户的ID来完成此操作。 但是,当我单击用户名时,我被重定向到index.php。我已经尝试了add_rewrite_rule(),但我仍然被重定向到index.In my functions.php我有以下代码:

add_action( 'init', 'fwwp_rewrites_init' );
function fwwp_rewrites_init(){
    add_rewrite_rule(
        'user-profile/([0-9]+)/?$',
        'index.php?pagename=user-profile&id=$matches[1]',
        'top'
    );
}

然后在user-profile.php我有:

add_filter( 'query_vars', 'fwwp_query_vars' );
    function fwwp_query_vars( $query_vars ){
    $query_vars[] = 'id';
    return $query_vars;
}

我甚至尝试了remove_filter('template_redirect','redirect_canonical');,这样我至少可以获得404,但我仍然被重定向。

我在这里缺少什么?

0 个答案:

没有答案