wordpress - 如何在不破坏 WordPress 的情况下使用 .htaccess 向 URL 添加参数
问题描述
我需要在不破坏 WordPress 功能的情况下向 URL 添加参数。
在此处的许多帖子的帮助下,我已经解决了添加参数的部分。
首先,当我添加参数时我无法登录,但这就是我添加带有 REQUEST_URI 的 RewriteCond 的原因。
但现在我无法在我的 WordPress 网站上发布页面。当我登录到 WordPress 的后端,并添加一个新页面并发布它时,它不应该丢弃更改并“重新发布”当前版本,也不应该给出发布/更新失败消息。目前看起来它只是恢复到当前版本,但显示页面已成功发布的消息。或者它会给出一个错误,具体取决于使用哪个 RewriteCond / REQUEST_URI 行。
这就是我现在的 .htaccess 中的内容
RewriteEngine on
RewriteCond %{REQUEST_URI} !^(/wp-login.*|/wp-admin)
RewriteCond %{QUERY_STRING} ^(?!key)
RewriteRule ^(.*)$ $0?key=value[QSA,L,NC,NE,R]
我也尝试过改变
RewriteCond %{REQUEST_URI} !^(/wp-login.*|/wp-admin)
至
RewriteCond %{REQUEST_URI} !^wp-*
但后来我收到更新页面失败的错误。添加新页面时,我收到“发布失败”消息。
每个 URL 都应该附加 ?key=value,除了带有 wp-login.php 或 wp-admin 的 URL,而不会破坏 WordPress 后端的其他功能。
解决方案
经过更多的挖掘,我自己解决了这个问题。
我添加了
RewriteCond %{HTTP_REFERER} !(/wp-login.*|/wp-admin)
现在键值对不会阻止 WordPress 保存帖子和页面。
推荐阅读
- json - 使用 json 向多个收件人发送邮件
- r - 是否有一个 R 包可以加速时间序列分析中的滞后和差分?
- php - 如何从 URI 中获取正则表达式,如 Laravel 路由
- html - 如何在手机/标签等中自动旋转网页游戏
- php - Quickbooks PHP conolibyte API 有授权 URL 问题
- java - Spring Batch:如何管理与一个数据源的多线程作业连接(阅读器数据源连接问题)
- automated-tests - 自动化单元测试 - SPFX 应用程序定制器
- sql - 出现 SQL 错误:ORA-00907:sql developer 中缺少右括号
- javascript - Webpack:避免多个 jquery 实例
- go - Go中的批处理通道输出