我們可以通過做如下的修改來實現(xiàn)讓wordpress允許使用中文用戶名登錄:
1、打開wp-includes/formatting.php文件
2、找到
function sanitize_user( $username, $strict = false ) {3、在緊接著下一行增加
$strict = false;通過簡單的三部曲即可實現(xiàn)該功能,原理也很簡單,強制使$strict = false,這樣wordpress注冊或修改用戶名時就不會對用戶名字符進行嚴格的處理,中文用戶名可以正常使用。
1.安全性問題:如果任何字符串都可以注冊為用戶名,是否會對自己的網(wǎng)站構(gòu)成威脅?
2.升級后覆蓋問題:如果你升級wordpress,wp-includes/formatting.php文件會被升級文件覆蓋,你需要重新修改這個地方,否則新的用戶可能無法再使用中文用戶名,而原本的中文用戶名可能也會遇到修改信息、登錄等麻煩。
另一種解決辦法
wordpress博客默認是不支持注冊中文用戶名的,無論是用戶前臺注冊,還是你在后臺添加,只要包含了中文,他就會提示“此用戶名包含無效字符”。解決這類問題無非是修改代碼或是使用插件。
修改代碼打開wp-includes目錄下的formatting.php文件,搜索“function sanitize_user( $username, $strict = false )”在其下面增加代碼“$strict = false;”
function sanitize_user( $username, $strict = false )
{
$strict = false;//解決無法注冊中文用戶名問題
$raw_username = $username;
$username = wp_strip_all_tags( $username );
$username = remove_accents( $username );
}
修改代碼解決問題的缺點是,每次WordPress升級之后,需要再次操作一遍。
現(xiàn)在我們就可以實現(xiàn)中文登錄了
更多信息請查看IT技術(shù)專欄