新闻中心
WordPress支持中文用户名方法(升级版)
作者 / 无忧主机 时间 2015-08-22 23:03:33
很早之前无忧主机小编分享过一篇文章:WordPress注册中文用户名方法,通过这篇文章的方法可以让WordPress站点通过中文用户名来注册。在一段时间用户的反馈来说,之前文章教程对用户名的过滤太少了,容易出现安全问题。任何事情都是循循渐进的,无论什么程序都是通过补丁来完善自己的不足,一步步将程序完美化。借鉴之前的文章和网上收集,本节无忧主机小编将给大家介绍一下WordPress支持中文用户名方法(升级版)。 之前文章原理介绍:借鉴wp-includes/formatting.php中sanitize_user函数的写法(php空间探针地址:php探针) WordPress支持中文用户名方法(升级版)操作方法如下: 将下列代码复制到当前主题目录下的functions.php中:
function ludou_sanitize_user ($username, $raw_username, $strict) { $username = wp_strip_all_tags( $raw_username ); $username = remove_accents( $username ); // Kill octets $username = preg_replace( '|%([a-fA-F0-9][a-fA-F0-9])|', '', $username ); $username = preg_replace( '/&.+?;/', '', $username ); // Kill entities // 网上很多教程都是直接将$strict赋值false, // 这样会绕过字符串检查,留下隐患 if ($strict) { $username = preg_replace ('|[^a-z\p{Han}0-9 _.\-@]|iu', '', $username); } $username = trim( $username ); // Consolidate contiguous whitespace $username = preg_replace( '|\s+|', ' ', $username ); return $username; } add_filter ('sanitize_user', 'ludou_sanitize_user', 10, 3);以上就是wordpress支持中文用户名的方法,希望可以帮助到大家。 无忧主机相关文章推荐阅读: WORDPRESS后台文章如何按最后修改的时间排序 无忧主机精心推荐WORDPRESS安装插件让您的站点事半功倍 WORDPRESS在LINUX环境下不用插件实现XML地图的具体方法
本文地址:https://www.51php.com/wordpress/19993.html
上一篇: joomla禁止addthis分享按钮的方法
下一篇: Ecshop教程:无法删除分类的解决方法