我想在我的WooCommerce网站中使用电子邮件ID作为用户名。我可以在我的网站上看到(用户名和电子邮件ID)我想在注册页面上只显示电子邮件ID和密码。让我知道如何做到这一点。
答案 0 :(得分:1)
我不记得我在哪里找到它,但我在我的一个网站上使用它。将它放在主题的functions.php文件中。
/**
// Allow customers to login with their email address or username
**/
add_filter('authenticate', 'internet_allow_email_login', 20, 3);
/**
* internet_allow_email_login filter to the authenticate filter hook, to fetch a username based on entered email
* @param obj $user
* @param string $username [description]
* @param string $password [description]
* @return boolean
*/
function internet_allow_email_login( $user, $username, $password ) {
if ( is_email( $username ) ) {
$user = get_user_by_email( $username );
if ( $user ) $username = $user->user_login;
}
return wp_authenticate_username_password( null, $username, $password );
}
?>