WordPress 重定向插件,用于在目标 URL 中包含查询参数

Posted

技术标签:

【中文标题】WordPress 重定向插件,用于在目标 URL 中包含查询参数【英文标题】:WordPress Redirection plugin to include query parameters in target URL 【发布时间】:2018-08-20 07:57:57 【问题描述】:

我正在使用 WordPress 重定向插件将旧登录页面重定向到新域。

我能够匹配包括任何查询字符串的 URL,这会将 100% 重定向到新域。

示例: 发件人:

/page/(\?.+)?$

收件人:

https://new-site.com/page

如何在插件的目标 URL 中包含查询字符串,以便浏览器重定向到这样的内容:

https://new-site.com/page?q=test&s=test2

.htaccess

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /usbed/
RewriteRule ^index\.php$ - [L]
RewriteCond %REQUEST_FILENAME !-f
RewriteCond %REQUEST_FILENAME !-d
RewriteRule . /usbed/index.php [L]
</IfModule>

# END WordPress

【问题讨论】:

你目前的指令是什么? 我不明白你所说的“指令”是什么意思 .htaccess 文件中的规则。 试试https://new-site.com/page$1。有关详细信息,请参阅redirection.me/support/redirect-regular-expressions。你也可以试试这个正则表达式:/page(|/|/?\?.+)$ 感谢@SallyCJ,您可以将其作为答案,我会接受。 【参考方案1】:

其实很简单。

只需将 目标 URL 设置为:

https://new-site.com/page$1

$1指的是你提供的RegEx中捕获的(\?.+)的内容。

更多详情请见https://redirection.me/support/redirect-regular-expressions/。

请参阅下面的示例:

然而,在那个例子中,我使用了这个正则表达式:/page(|/|/?\?.+)$,它与这些 URL 匹配:(你可以在 RegExr 上测试它,但你需要用 \ 转义 /;因此你'd 使用\/page(|\/|\/?\?.+)$,Redirection 插件也接受)

http://example.com/page
http://example.com/page/
http://example.com/page?q=test&s=test2
http://example.com/page/?q=test&s=test2

【讨论】:

我测试并确认此解决方案适用于 4.3.3 的重定向插件。 感谢您帮助测试它,@V-SHY :)

以上是关于WordPress 重定向插件,用于在目标 URL 中包含查询参数的主要内容,如果未能解决你的问题,请参考以下文章

我需要撤消重定向插件完成的重定向 URL

php 将WordPress前端https URL重定向到没有插件的http

如何在 Wordpress 插件中正确重定向?

将Drupal路径重定向转换为WordPress插件重定向

带有正则表达式通配符的 WordPress PHP 重定向

钩子在 wordpress 上重定向