默认情况下,WordPress在空格之间使用+符号
不,它不会。WordPress不会生成+
字符,它不使用这些字符,也看不到它们。
那么+
来自哪里
浏览器和URL。URL参数中的空格编码为
+
字符或
%20
. 表格特别成为
+
.
提交输入到HTML表单中的数据时,表单字段名称和值将进行编码,并使用方法GET或POST,或历史上通过电子邮件,在HTTP请求消息中发送到服务器。[3] 默认情况下使用的编码基于早期版本的通用URI百分比编码规则[4],并进行了大量修改,如换行规范化和将空格替换为+而不是%20。以这种方式编码的数据的媒体类型是application/x-www-form-urlencoded,它目前在HTML和XForms规范中定义。此外,CGI规范包含web服务器如何解码此类数据并使其可用于应用程序的规则。
https://en.wikipedia.org/wiki/Percent-encoding#The_application/x-www-form-urlencoded_type
搜索URL转换
"test data"
到
test+data
因为这就是HTML表单生成的URL参数的工作方式。
但这能做到吗
有没有办法把+改成连字符。
Not without causing major problems, and unexpected bugs. 为此,您需要截取表单输入,并将输入中的空格替换为-
使用javascript。
然后,您需要在PHP端截取它并撤消更改。因此,不可能搜索包含连字符的内容。这也将破坏许多主题和插件的搜索功能。
这也会破坏大多数搜索插件,并干扰SEO插件,SEO插件会将搜索查询解释为带有连字符的单个单词。