2014-02-06 78 views
1

我正在使用GET变量来选择要在页面上显示的特定项目。我的网址通常会看起来像:修复损坏的GET变量

/?type=xxxx 

然后我有一个登录插件(WordPress的),其中增加?redirect=ok对提交的URL。不幸的是,这使得网址看起来像:/?type=xxxx?redirect=ok,它打破了以前的变量。

我想以某种方式编辑该URL。我想到了一些方法:

  • 的.htaccess找到并重写?redirect=ok为空白或&重定向= OK
  • PHP剥离的那部分字符串,然后重定向

这些似乎都不起作用。

任何帮助将大规模赞赏。

+0

好了,你为什么不只是编辑插件和计数的get参数?如果已经有一些插件添加&重定向=确定,否则插件添加?重定向=确定 – Musterknabe

+0

要么编辑插件使用'add_query_arg()',它将处理为您解析URL。或者,编辑您正在创建的链接以使用'add_query_arg()'。更多这里:http://codex.wordpress.org/Function_Reference/add_query_arg –

+0

我确实想过,但我没有写插件,所以我不知道代码是在哪里。尽管我已经向开发人员寻求帮助。 – lcheney

回答

0

这里是mod_rewrite修复这个奇怪的问题。

将这个代码在你DOCUMENT_ROOT/.htaccess文件第一个规则

RewriteEngine On 

RewriteCond %{THE_REQUEST} \s/+([^?]*\?type=.*?)\?(redirect=ok) [NC] 
RewriteRule^%1&%2 [R=301,L] 
+1

所有的答案是有效的,赞赏,但这是一个像我这样的新手最快和最简单的。谢谢! – lcheney

+0

不客气,很高兴它解决了。 – anubhava