使用查询字符串重写URL

时间:2015-06-18 作者:JayTee

我在wordpress网站上运行Centos 6操作系统,尝试重新编写url时遇到了麻烦。

这就是我正在努力实现的目标。

Current URL = http://www.downer.co.uk/property-details/?propertyidtag=508362_166879S

我想将此重新写入

http://www.downer.co.uk/property-details/508362_166879S/

我必须尝试每一个tuturial在线,但绝对没有成功。请帮帮我!!

2 个回复
最合适的回答,由SO网友:JayTee 整理而成

我已经破解了。:)这是我的解决方案。

add_rewrite_rule(\'^(property-details)/([^/]*)/?\', \'index.php?pagename=$matches[1]&propertyidtag=$matches[2]\',\'top\');
add_filter(\'query_vars\', \'foo_my_query_vars\');
function foo_my_query_vars($vars){
$vars[] = \'propertyidtag\';
return $vars;
}
谢谢你的帮助

SO网友:Bruno Monteiro

首先,您必须确保向WordPress注册公共查询变量,以便它识别您的重写规则变量。

将此代码添加到functions.php 文件:

add_rewrite_rule(\'^(tips)/([^/]*)/([^/]*)/?\', \'index.php?name=$matches[1]&id=$matches[2]&filter_id=$matches[3]\',\'top\');

add_filter(\'query_vars\', \'foo_my_query_vars\');
function foo_my_query_vars($vars){
    $vars[] = \'id\';
    $vars[] = \'filter_id\';
    return $vars;
}
之后,输入Permalinks Settings 页面刷新永久链接,只需再次保存,Wordpress系统将重写.htaccess 文件

您可以按如下方式访问变量:

$id = get_query_var(\'id\');
$filter_id = get_query_var(\'filter_id\');
这个rewrite_rule 仅适用于1级(1为filter_id).

结束

相关推荐