WordPress:删除名称&公共名称注册字段

时间:2017-08-04 11:38:28

标签: php wordpress

是否有可能删除wordpress标准注册过程中不必要的字段,如姓名,姓氏和公共名称字段?对于没有人需要的用户来说,还有更多的步骤。通常,这些字段在注册中是必需的。

只需用户名和电子邮件字段即可。

2 个答案:

答案 0 :(得分:0)

是的,你可以在wordpress中做到这一点......

您只需要编辑模板......

OR

更改挂钩.-

答案 1 :(得分:0)

绝对是的,你可以做到这一点。

规则1:WordPress需要用户名。我们必须提供用户名。

规则2:不要编辑WordPress核心代码。

我们可以通过隐藏用户名字段,获取电子邮件并将其存储为用户名来实现此目的。

步骤1:删除用户名文本字段

add_action('login_head', function(){
?>
    <style>
        #registerform > p:first-child{
            display:none;
        }
    </style>

    <script type="text/javascript" src="<?php echo site_url('/wp-includes/js/jquery/jquery.js'); ?>"></script>
    <script type="text/javascript">
        jQuery(document).ready(function($){
            $('#registerform > p:first-child').css('display', 'none');
        });
    </script>
<?php
});

步骤2:删除用户名错误

//Remove error for username, only show error for email only.
add_filter('registration_errors', function($wp_error, $sanitized_user_login, $user_email){
    if(isset($wp_error->errors['empty_username'])){
        unset($wp_error->errors['empty_username']);
    }

    if(isset($wp_error->errors['username_exists'])){
        unset($wp_error->errors['username_exists']);
    }
    return $wp_error;
}, 10, 3);

步骤3:操纵背景注册功能。

add_action('login_form_register', function(){
    if(isset($_POST['user_login']) && isset($_POST['user_email']) && !empty($_POST['user_email'])){
        $_POST['user_login'] = $_POST['user_email'];
    }
});