我尝试通过update\\u options($name,$value)导入选项值,其中$value有特殊字符(例如撇号),我注意到撇号在到达数据库之前会从文本中去除。
在将字符串发送到update\\u options()之前,建议对其进行哪些清理?
我尝试通过update\\u options($name,$value)导入选项值,其中$value有特殊字符(例如撇号),我注意到撇号在到达数据库之前会从文本中去除。
在将字符串发送到update\\u options()之前,建议对其进行哪些清理?
尝试esc_html( $string )
(Codex ref), 其中包括对单引号和双引号进行编码。
有关更多参考,请参阅Data Validation 法典中的条目。
对于进入数据库的数据,不应使用esc函数。esc功能仅用于输出。
update\\u option()函数为您进行清理,因此无需运行任何额外的san函数。
我不能对克里斯·弗兰纳根的回答发表评论,所以。。。update\\u options()不会清理所有选项。某些核心选项已清理,但自定义选项未清理。您必须自己清理输入。
https://www.wordfence.com/blog/2018/11/xss-injection-campaign-exploits-wordpress-amp-plugin/
我使用设置API创建了主题选项页面,一切正常,但我无法保存选项。我试图找出我错过了什么,但我失败了。知道是什么导致了这个问题吗?这是我的选项页面的代码<?php /** * This functions registers default options values for Evolutionary theme * settings */ function ev_theme_settings_defaults() { $options