1
我试图重写,像这样通过以下网址后(%2F
是/
):WordPress的URL重写 - URL的一部分现有页面
/archives/JHW
-> /archives?RefNo=JHW
/archives/JHW/1/1
-> /archives?RefNo=JHW%2F1%2F1
/archives
-> no redirect
的想法是让网址好看,但随后能够从/archives
页面获取$_GET['RefNo']
的剩余路径,该页面已存在as a page。到目前为止,我得到了:
RewriteRule ^archives/(.+)/? /index.php/archives/?RefNo=$1 [QSA,L]
但是,这似乎并没有工作。
我一直是这样的代码将它添加我functions.php
里面我的主题:
add_rewrite_rule(
'archives/(.+)/?',
'index.php/archives?RefNo=$1',
'top'
);
,然后去了Permalinks
页面/wp-admin
使其再生.htaccess
文件。当我看着.htaccess
这条规则就在那里时,它就像我所期待的那样没有踢进去。
我哪里错了?
更新
我现在.htaccess
文件是:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase/
RewriteRule ^archives/(.+)/? /index.php/archives/?RefNo=$1 [QSA,L]
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
你可以发布你目前的Wordpress'htaccess吗?另外,由于你说它是一个现有的页面,在哪里定义了'/ archives'? – 2014-10-01 09:00:16
它的字面意思是[一个现有的页面](http://grab.by/APRE) - 我已经用当前的htaccess更新了这个问题 – Joe 2014-10-01 09:03:55
好的。但你的规则呢?你正在尝试重写'/index.php/archives/?RefNo = XXX'(通过Wordpress),并且在你提到的问题的开头提到'/ archives?RefNo = XXX'。哪一个是使用的? – 2014-10-01 09:06:06