2011-01-07 88 views
2

我有一个WordPress的页面,接受查询字符串参数:转换WordPress的URL路径进入查询字符串

http://x.com/page-name/?parameter=value

这工作得很好。该页面正确获取$ _GET ['parameter']的值。

我想要做的是使人们有可能作为一个正常的网址输入:

http://x.com/page-name/value

我需要让用户输入URL 2重写URL的能力,和WordPress获取URL 1 。我使用的是Apache,并希望使用mod_rewrite和.htaccess来完成此操作。有什么建议?

+0

“干净的网址”是这方面的流行术语。 http://teamtutorials.com/web-development-tutorials/clean-url%E2%80%99s-with-wordpress – 2011-01-07 22:41:23

回答

0

您可以使用主题functions.php WP内做到这一点:

add_action('init', 'ss_permalinks'); 
function ss_permalinks() { 
    add_rewrite_rule(
     'page/remove/([^/]+)/?', 
     'index.php?pagename=page&service=$matches[1]', 
     'top' 
); 
} 
add_filter('query_vars', 'ss_query_vars'); 
function ss_query_vars($query_vars) { 
    $query_vars[] = 'removeid'; 
    return $query_vars; 
} 

实施后,一旦重新保存您的永久链接设置。 page是页面点来当用户访问这个URL(domain.com/page/remove/432),并$matches[1]应在URL remove/后数段塞。该号码可以通过稍后指定的变量访问,如果指定,目标页面模板上的$query_vars[] = 'removeid';/$ removeid将是URL中的数字。