Woocommerce 如何在电子商务中使用电子邮件作为用户名?

Woocommerce 如何在电子商务中使用电子邮件作为用户名?,woocommerce,Woocommerce,我想在我的WooCommerce网站中使用电子邮件id作为用户名。我可以在我的网站上看到(用户名和电子邮件ID),我只想在注册页面上显示电子邮件ID和密码。让我知道怎么做。我不记得在哪里找到的,但我在我的一个网站上使用了它。将其放在主题的functions.php文件中 /** // Allow customers to login with their email address or username **/ add_filter('authenticate', 'internet_all

我想在我的WooCommerce网站中使用电子邮件id作为用户名。我可以在我的网站上看到(用户名和电子邮件ID),我只想在注册页面上显示电子邮件ID和密码。让我知道怎么做。

我不记得在哪里找到的,但我在我的一个网站上使用了它。将其放在主题的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 );
}
?>

这是WooCommerce自2.2版以来的默认功能。你说@Ewout,但我使用的是2.5.5版,它使用的是访问者的名字,而不是电子邮件地址。使用店面和子主题清洁安装。