【发布时间】:2016-10-31 04:28:33
【问题描述】:
我需要帮助清理我的网址:
http://cocrele.com/service-areas/?state=arkansas&city=amity
到这里:
http://cocrele.com/service-areas/arkansas/amity/
我尝试了一些 .htaccess 技巧,但使用 WordPress 没有任何效果...
如果能提供任何帮助,我将不胜感激。
布雷特
【问题讨论】:
我需要帮助清理我的网址:
http://cocrele.com/service-areas/?state=arkansas&city=amity
到这里:
http://cocrele.com/service-areas/arkansas/amity/
我尝试了一些 .htaccess 技巧,但使用 WordPress 没有任何效果...
如果能提供任何帮助,我将不胜感激。
布雷特
【问题讨论】:
试试这个,这将在 url 中搜索字符串,如果它包含你想要的,那么你可以根据它设置 get 参数。很容易修复。
$url = 'http://' . $_SERVER['SERVER_NAME'] . $_SERVER['REQUEST_URI'];
if (strpos($url,'amity') !== false) {
//Do functions, etc. if it contains amity
$_GET['state'] = 'arkansas';
$_GET['city'] = 'amity';
} else {
//Don't do anything
}
【讨论】:
你需要一个自定义的重写规则。check this out。
在你的function.php中
function custom_rewrite_tag() {
add_rewrite_tag('%state%', '([^&]+)');
add_rewrite_tag('%city%', '([^&]+)');
}
add_action('init', 'custom_rewrite_tag', 10, 0);
function custom_rewrite_rule() {
add_rewrite_rule('^service-area/([^/]*)/([^/]*)/?','index.php?page_id=578&state=$matches[1]&city=$matches[2]','top');
}
add_action('init', 'custom_rewrite_rule', 10, 0);
现在您可以使用以下 URL 访问同一页面: http://cocrele.com/service-area/arkansas/amity/
不要忘记在此更改后重置您的永久链接以使其正常工作。只需再次保存永久链接规则。
【讨论】: