- 插件基础知识
- 插件安全
- 钩子
- 隐私
- 管理菜单
- 简码
- 设置
- 元数据
- 自定义帖子类型
- 分类法
- 用户
-
- JavaScript、Ajax 和 jQuery
- 任务调度
- 国际化
- 插件目录
- 开发人员工具
-
清理数据
不受信任的数据来自许多来源(用户、第三方站点,甚至您自己的数据库!),所有这些都需要在使用前进行检查。
请记住:即使是管理员也是用户,用户会故意或无意地输入不正确的数据。保护他们不受伤害是你的工作。
_清理_输入是保护/清理/过滤输入数据的过程。验证优于清理,因为验证更具体。但是当“更具体”是不可能的时候,消毒是下一个最好的事情。
例子
假设我们有一个名为的输入字段title
:
<input id="title" type="text" name="title">
我们不能在这里使用验证,因为文本字段太笼统了:它可以是任何东西。所以我们用函数清理输入数据sanitize_text_field()
:
$title = sanitize_text_field( $_POST['title'] );
update_post_meta( $post->ID, 'title', $title );
在幕后,sanitize_text_field()
执行以下操作:
- 检查无效的 UTF-8
- 将单个小于号 (<) 转换为实体
- 剥离所有标签
- 删除换行符、制表符和多余的空格
- 条八位组
消毒功能
有许多功能可以帮助您清理数据。
-
sanitize_email()
-
sanitize_file_name()
-
sanitize_hex_color()
-
sanitize_hex_color_no_hash()
-
sanitize_html_class()
-
sanitize_key()
-
sanitize_meta()
-
sanitize_mime_type()
-
sanitize_option()
-
sanitize_sql_orderby()
-
sanitize_term()
-
sanitize_term_field()
-
sanitize_text_field()
-
sanitize_textarea_field()
-
sanitize_title()
-
sanitize_title_for_query()
-
sanitize_title_with_dashes()
-
sanitize_user()
-
sanitize_url()
-
wp_kses()
-
wp_kses_post()