WordPress 数据库 MySQL 手机号码中间4位替换为星号

编辑于:2022年04月27日

WordPress 数据库 MySQL 手机号码中间4位替换为星号

WordPress 有wp_userswp_usermeta两张表储存用户信息,其字段nicknamedisplay_nameuser_nicename如果也存为手机号码,会导致号码外泄,因此我们将隐藏手机号码中间四位数。

SQL手机号码隐藏替换命令

UPDATE wp_usermeta SET meta_value = INSERT(meta_value,4,4,'****') WHERE meta_key = 'nickname' AND meta_value REGEXP '^1[0-9]{10}$';

UPDATE wp_users SET display_name = INSERT(display_name,4,4,'****') WHERE display_name REGEXP '^1[0-9]{10}$';

UPDATE wp_users SET user_nicename = INSERT(user_nicename,4,4,'cccitu') WHERE user_nicename REGEXP '^1[0-9]{10}$';

注意!第三行命令!user_nicename 字段会组成作者列表页网址的一部分,而*星号不能再网址中出现,所以可将手机号中间四位替换为其它任意字符,比如 cccitu 等。

执行命令

修改数据库为极敏感的操作,操作前务必备份数据,以防错误操作酿成无法挽回的后果。

打开数据库管理工具phpmyadmin,看一下你的表前缀是否为 wp_ 如果不是,则将命令中的wp_替换为你的表前缀。

点击 SQL 将修改好的命令复制进来,先模拟查询,看看是否有报错,如检查无异样,可点击执行进行替换。

更多手机号码的隐藏过滤的方法

采用 WordPress 过滤钩子、自定义函数或 SQL 的方式,对手机号进行脱敏处理,避免再网站出现完整的手机号码泄露用户隐私。

相关推荐

暂无评论