Change username before login

时间:2019-03-08 作者:Javad Yousefi

如何在登录表单中提交之前更改用户名?

我用过mobile number 作为用户在站点中注册时的用户名。此外,我已删除0 从手机号码开始。现在在登录表单中,我需要删除0 从手机号码开始,如果用户输入手机号码0. 中是否有用作操作的函数functions.php

1 个回复
最合适的回答,由SO网友:Krzysiek Dróżdż 整理而成

您可以使用wp_authenticate 筛选。。。此筛选器在用户通过身份验证之前启动。参数是通过引用传递的,因此您可以修改它们。

// user name is passed in by reference 
function wp_authenticate_by_email( &$username ) {
    // make sure that the condition below works for you
    if ( is_numeric( $username ) && \'0\' == substr( $username, 0, 1 ) ) {
        $username = substr( $username, 1 );
    }
}
add_action( \'wp_authenticate\', \'wp_remove_leading_zero_from_phone_number\' );

相关推荐

自定义登录页面始终重定向到wp-login.php

我已经创建了一个自定义登录页面,用户可以在其中登录我的网站,但当我尝试登录时,它会重定向到wp登录。php和我必须输入reCAPTCHA(我讨厌这些!)。我已经尝试重新登录wp。php到我的自定义登录页面,这是可行的,但结果是,现在我处于一个无限循环中,重定向到同一个自定义登录页面,而无法实际登录。我该怎么做?EDIT我的自定义登录页面与此完全相同:<?php get_header(); ?> <div class=\"container\"> <div cl