wordpress中的多参数URL重定向问题

时间:2014-11-06 19:06:30

标签: wordpress .htaccess mod-rewrite

我有一个问题似乎无法解决。

在WordPress安装中,我们有这些由URL结构(例如此

)触发的特殊配置文件页面

/our-firm/profile/1/Some.Name

他们希望将名称附加到网址,以便网址更漂亮。这看起来像之前通过某种类型的插件管理之前我们得到它。现在最近的WordPress更新已损坏该插件,此功能不再有效。如果你不使用这个名字,我知道它至少有用,例如:

/我们-硬/简档/ 1 /

但那当然不是客户想要的。我试图用一些.htaccess重写来解决这个问题:

RewriteRule ^our-firm/profile/([0-9]+)/([^+]+)?$ our-firm/profile?id=$1&name=$2 [L,QSA]

但我没有随处可见。奇怪的是,它可能只是我看的东西,但如果我访问:

/our-firm/profile?id=1&profile_name=Some.Name

即使工作正常。

任何帮助都会很棒。在此先感谢!!

1 个答案:

答案 0 :(得分:0)

您可以使用WP的add_rewrite_rule(http://codex.wordpress.org/Rewrite_API/add_rewrite_rule

示例:

function wptuts_add_rewrite_rules() {
    add_rewrite_rule('^path-1/([^/]*)?$','index.php?page_id=PAGE_ID&nameSurname=$matches[1]','top');
    flush_rewrite_rules();
}
add_action( 'init', 'wptuts_add_rewrite_rules' );

function add_query_vars($aVars) {
    $aVars[] = "nameSurname"; 
    return $aVars;
}

add_filter('query_vars', 'add_query_vars');

并使用$ wp_query-> query_vars [“nameSurname”]获取页面中的参数;