2012-09-01 94 views
7

我想用wordpress的add_rewrite_rule函数添加自定义规则,但它们不起作用。奇怪的是,当我使用Monkeyman Rewrite Analyzer插件检查它们时,规则被添加并匹配我的URL。Wordpress add_rewrite_rule页面重定向不正确

当我尝试访问该页面时,它重定向到不正确的位置。

这里是我的代码:

add_rewrite_tag('%cc%','([a-zA-Z]+)'); 
add_rewrite_tag('%id%','([0-9]+)'); 

add_rewrite_rule('job-details/([0-9]+)$', 'index.php?pagename=jobs&cc=show&id=$matches[1]', 'top'); 

global $wp_rewrite; 
$wp_rewrite->flush_rules(); 

至于我的网址,如果我尝试访问的URL site.com/job-details/1,它重定向我/就业/,这是页面与我的插件相关联。

这里是我的.htaccess文件

RewriteEngine On 
RewriteBase/

RewriteRule ^index\.php$ - [L] 

# uploaded files 
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L] 

RewriteCond %{REQUEST_FILENAME} -f [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule^- [L] 
RewriteRule . index.php [L] 
+3

添加您的决议作为您自己的帖子的答案(你可以做到这一点)。 – ChelseaStats

+0

高兴你得到它的工作...提交你的答案,并将其配对.. –

+1

请发布您的编辑为答案。 – BoltClock

回答

2

原来,我的剧本是使用自定义功能抢到通过$ _REQUEST对象,它正在由WordPress无效的GET参数。

我用下面的代码来代替它。

global $wp_query; 
$wp_query->query_vars['cc'];