Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Wordpress htaccess:如果查询变量存在于引用URL中,则维护查询变量_Wordpress_.htaccess_Mod Rewrite - Fatal编程技术网

Wordpress htaccess:如果查询变量存在于引用URL中,则维护查询变量

Wordpress htaccess:如果查询变量存在于引用URL中,则维护查询变量,wordpress,.htaccess,mod-rewrite,Wordpress,.htaccess,Mod Rewrite,试图在我的wordpress安装中快速制定一些htaccess规则,以便在用户点击整个站点的链接时,我可以维护一个查询变量 基本上,如果用户位于example.com/?prop=1并单击某个链接,如果该链接指向example.com/posts,则该链接应自动转到example.com/posts?prop=1。只需检查引用url中是否有prop-var,以及是否将其附加到他们试图访问的url 我现在从我的wordpress permalink结构中得到了这个: RewriteEngine O

试图在我的wordpress安装中快速制定一些htaccess规则,以便在用户点击整个站点的链接时,我可以维护一个查询变量

基本上,如果用户位于example.com/?prop=1并单击某个链接,如果该链接指向example.com/posts,则该链接应自动转到example.com/posts?prop=1。只需检查引用url中是否有prop-var,以及是否将其附加到他们试图访问的url

我现在从我的wordpress permalink结构中得到了这个:

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
我试图添加类似的内容,但它没有按我希望的那样工作:

RewriteCond %{HTTP_REFERER} (^|&)prop=([^&]+)
RewriteRule ^(.*)$ /$1?prop=%2 [L,R]

我似乎无法让HTTP\U REFERER规则正常工作。当我在example.com/?prop=1这样的url上单击链接时,是否应该每次都调用它?

您的正则表达式似乎不正确

请尝试以下代码:

RewriteEngine On
RewriteBase /

RewriteRule ^index\.php$ - [L]

RewriteCond %{QUERY_STRING} !(^|&)prop= [NC]
RewriteCond %{HTTP_REFERER} \?(prop=[^&]+) [NC]
RewriteRule ^(.*)$ /$1?%1 [L,R,QSA]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

非常感谢。这是迄今为止我所能做到的最接近的一次!它现在正确地将查询变量附加到新的url,但不幸的是会导致重定向循环,并且不会加载页面。有没有关于如何修复的想法?难以置信。唯一不起作用的地方是单击指向根域的链接时。单击example.com/posts/?prop=1到example.com的链接不会保留查询变量,但会保留任何其他链接!我觉得这是因为wordpress中的根必须实际调用index.php,这会混淆规则?太棒了,这很管用。我能问一下到底是什么变化让我知道接下来会发生什么吗?非常感谢。早些时候,我匹配了
+
,这当然不适用于登录页。现在我有了
*
,以确保它也适用于登录页。