首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让当前用户Fullname显示在表单验证消息中

如何让当前用户Fullname显示在表单验证消息中
EN

Stack Overflow用户
提问于 2019-05-19 19:35:12
回答 1查看 54关注 0票数 1

我正在使用一个名为Ultimate Membership Pro的Wordpress插件,它使用Ajax调用来验证注册表单中的用户名。但是,当已注册的用户名尝试再次注册时,我希望检索该用户的全名。

示例-我希望验证消息显示:此用户名已被John Doe采用

我曾尝试操作插件目录中名为indeed membership pro.php文件的文件名。

代码语言:javascript
复制
//I added this code under the function
//I called a global method
                global $current_user;
        $uid = get_user_by('login', $value);



                            case 'user_login':
                if (!validate_username($value)){
                    $return = $register_msg['ihc_register_error_username_msg'];
                }
                if (username_exists($value)) {

      //I concatenate the error message with the input username to get the user ID. But i need the user FirstName and Lastname


                    $return = $register_msg['ihc_register_username_taken_msg'] . $uid->ID;
                }
                break;




function ihc_check_value_field($type='',  $value='', $val2='',  $register_msg=array()){

//I called a global method
                global $current_user;
        $uid = get_user_by('login', $value);


    if (isset($value) && $value!=''){

        switch ($type){
            case 'user_login':
                if (!validate_username($value)){
                    $return = $register_msg['ihc_register_error_username_msg'];
                }
                if (username_exists($value)) {

//I am able to get the user ID But i need First Name and last Name

                    $return = $register_msg['ihc_register_username_taken_msg']. $uid->ID;
                }
                break;
            case 'user_email':
                if (!is_email($value)) {
                    $return = $register_msg['ihc_register_invalid_email_msg'];
                }
                if (email_exists($value)){
                    $return = $register_msg['ihc_register_email_is_taken_msg'];
                }
                $blacklist = get_option('ihc_email_blacklist');
                if(isset($blacklist)){
                    $blacklist = explode(',',preg_replace('/\s+/', '', $blacklist));

                    if( count($blacklist) > 0 && in_array($value,$blacklist)){
                        $return = $register_msg['ihc_register_email_is_taken_msg'];
                    }
                }

                break;
            case 'confirm_email':
                if ($value==$val2){
                    $return = 1;
                } else {
                    $return = $register_msg['ihc_register_emails_not_match_msg'];
                }
                break;
            case 'pass1':
                $register_metas = ihc_return_meta_arr('register');
                if ($register_metas['ihc_register_pass_options']==2){
                    //characters and digits
                    if (!preg_match('/[a-z]/', $value)){
                        $return = $register_msg['ihc_register_pass_letter_digits_msg'];
                    }
                    if (!preg_match('/[0-9]/', $value)){
                        $return = $register_msg['ihc_register_pass_letter_digits_msg'];
                    }
                } else if ($register_metas['ihc_register_pass_options']==3){
                    //characters, digits and one Uppercase letter
                    if (!preg_match('/[a-z]/', $value)){
                        $return = $register_msg['ihc_register_pass_let_dig_up_let_msg'];
                    }
                    if (!preg_match('/[0-9]/', $value)){
                        $return = $register_msg['ihc_register_pass_let_dig_up_let_msg'];
                    }
                    if (!preg_match('/[A-Z]/', $value)){
                        $return = $register_msg['ihc_register_pass_let_dig_up_let_msg'];
                    }
                }
                //check the length of password
                if($register_metas['ihc_register_pass_min_length']!=0){
                    if (strlen($value)<$register_metas['ihc_register_pass_min_length']){
                        $return = str_replace( '{X}', $register_metas['ihc_register_pass_min_length'], $register_msg['ihc_register_pass_min_char_msg'] );
                    }
                }
                break;
            case 'pass2':
                if ($value==$val2){
                    $return = 1;
                } else {
                    $return = $register_msg['ihc_register_pass_not_match_msg'];
                }
                break;
            case 'tos':
                if ($value==1){
                    $return = 1;
                } else {
                    $return = $register_msg['ihc_register_err_tos'];
                }
                break;

            default:
                //required conditional field
                $check = ihc_required_conditional_field_test($type, $value);
                if ($check){
                    $return = $check;
                } else {
                    $return = 1;
                }
                break;
        }
        if (empty($return)){
            $return = 1;
        }
        return $return;
    } else {
        $check = ihc_required_conditional_field_test($type, $value);//Check for required conditional field
        if ($check){
            return $check;
        } else {
            return $register_msg['ihc_register_err_req_fields'];
        }
    }
}



add_action("wp_ajax_nopriv_ihc_ap_reset_custom_banner", "ihc_ap_reset_custom_banner");
add_action('wp_ajax_ihc_ap_reset_custom_banner', 'ihc_ap_reset_custom_banner');
EN

回答 1

Stack Overflow用户

发布于 2019-05-19 20:13:03

$user_object->display_name就是你要找的东西。

鉴于此,将名字和姓氏等用户数据显示为错误消息的一部分可能不是一个好主意。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56207381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档