Huy Hòa
  • Home
  • Lập trình
    • WordPress
    • Joomla
    • Marketing
    • Seo Web
    • Thiết kế Web
  • Mẹo Vặt
  • Sức khỏe
  • Làm đẹp
  • Du Lịch
  • Free Tools
    • Chuyển Số Thành Chữ
    • Sửa Lỗi Font Chữ Tiếng Việt Online
    • Phần Mềm Gõ Tiếng Việt Online
  • Liên hệ
Nổi bật
  • Test
  • 15 cách làm trắng răng tại nhà cực kỳ hiệu quả và dễ áp dụng
  • 50+ website tải Sound Effects chất lượng cao miễn phí và có phí
  • Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay
  • Hướng dẫn 2 cách xóa phông nền ảnh Online không cần Photoshop
Thứ Sáu, Tháng Tám 1
Huy Hòa
  • Home
  • Lập trình
    • WordPress
    • Joomla
    • Marketing
    • Seo Web
    • Thiết kế Web
  • Mẹo Vặt
  • Sức khỏe
  • Làm đẹp
  • Du Lịch
  • Free Tools
    • Chuyển Số Thành Chữ
    • Sửa Lỗi Font Chữ Tiếng Việt Online
    • Phần Mềm Gõ Tiếng Việt Online
  • Liên hệ
Huy Hòa
Home»Thiết kế web»Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể

Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể

Facebook Twitter Pinterest LinkedIn Tumblr Email
Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể
Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể

wp_insert_user là hàm dùng để cập nhật thông tin thành viên (update user) hoặc để thêm (insert) thành viên mới vào cơ sở dữ liệu. wp_insert_user() có thể được sử dụng ở bất cứ đâu, miễn là gọi được hàm này, kể cả ở code của các bên thứ ba.

Mặc định wp_insert_user($userdata) sẽ trả về id của thành viên được thêm, hoặc nếu id của thành viên được xác định trong mảng $userdata rồi thì nó sẽ cập nhật thông tin của thành viên có id đã được xác định.
Hầu hết các trường trong mảng $userdata có các bộ lọc được liên kết với các giá trị.

Các trường hợp ngoại lệ là ‘ID’, ‘rich_editing’, ‘syntax_highlighting’, ‘comment_shortcuts’, ‘admin_color’, ‘use_ssl’, ‘user_registered’, ‘user_activation_key’, ‘spam’ và ‘role’. Các bộ lọc có tiền tố ‘pre_user_’ theo sau là tên trường. Ví dụ như trường ‘description’ sẽ có bộ lọc được gọi là ‘pre_user_description’ có thể được nối vào.

wp_insert_user wordpress

Table of Contents

Hàm wp_insert_user nằm ở đâu:

Các bạn có thể tìm thấy hàm này ở file: wp-includes/user.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
function wp_insert_user( $userdata ) {
    global $wpdb;
    if ( $userdata instanceof stdClass ) {
        $userdata = get_object_vars( $userdata );
    } elseif ( $userdata instanceof WP_User ) {
        $userdata = $userdata->to_array();
    }
    if ( ! empty( $userdata['ID'] ) ) {
        $ID            = (int) $userdata['ID'];
        $update        = true;
        $old_user_data = get_userdata( $ID );
        if ( ! $old_user_data ) {
            return new WP_Error( 'invalid_user_id', __( 'Invalid user ID.' ) );
        }
    $user_pass = ! empty( $userdata['user_pass'] ) ? $userdata['user_pass'] : $old_user_data->user_pass;
    } else {
        $update = false;
        // Hash the password.
        $user_pass = wp_hash_password( $userdata['user_pass'] );
    }
    $sanitized_user_login = sanitize_user( $userdata['user_login'], true );
    $pre_user_login = apply_filters( 'pre_user_login', $sanitized_user_login );
    $user_login = trim( $pre_user_login );
    if ( empty( $user_login ) ) {
        return new WP_Error( 'empty_user_login', __( 'Cannot create a user with an empty login name.' ) );
    } elseif ( mb_strlen( $user_login ) > 60 ) {
        return new WP_Error( 'user_login_too_long', __( 'Username may not be longer than 60 characters.' ) );
    }
    if ( ! $update && username_exists( $user_login ) ) {
        return new WP_Error( 'existing_user_login', __( 'Sorry, that username already exists!' ) );
    }
    $illegal_logins = (array) apply_filters( 'illegal_user_logins', array() );
    if ( in_array( strtolower( $user_login ), array_map( 'strtolower', $illegal_logins ), true ) ) {
        return new WP_Error( 'invalid_username', __( 'Sorry, that username is not allowed.' ) );
    }
    if ( ! empty( $userdata['user_nicename'] ) ) {
        $user_nicename = sanitize_user( $userdata['user_nicename'], true );
        if ( mb_strlen( $user_nicename ) > 50 ) {
            return new WP_Error( 'user_nicename_too_long', __( 'Nicename may not be longer than 50 characters.' ) );
        }
    } else {
        $user_nicename = mb_substr( $user_login, 0, 50 );
    }
    $user_nicename = sanitize_title( $user_nicename );
    $user_nicename = apply_filters( 'pre_user_nicename', $user_nicename );
    $user_nicename_check = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1", $user_nicename, $user_login ) );
    if ( $user_nicename_check ) {
        $suffix = 2;
        while ( $user_nicename_check ) {
            // user_nicename allows 50 chars. Subtract one for a hyphen, plus the length of the suffix.
            $base_length         = 49 - mb_strlen( $suffix );
            $alt_user_nicename   = mb_substr( $user_nicename, 0, $base_length ) . "-$suffix";
            $user_nicename_check = $wpdb->get_var( $wpdb->prepare( "SELECT ID FROM $wpdb->users WHERE user_nicename = %s AND user_login != %s LIMIT 1", $alt_user_nicename, $user_login ) );
            $suffix++;
        }
        $user_nicename = $alt_user_nicename;
    }
    $raw_user_email = empty( $userdata['user_email'] ) ? '' : $userdata['user_email'];
    $user_email = apply_filters( 'pre_user_email', $raw_user_email );
    if ( ( ! $update || ( ! empty( $old_user_data ) && 0 !== strcasecmp( $user_email, $old_user_data->user_email ) ) )
        && ! defined( 'WP_IMPORTING' )
        && email_exists( $user_email )
    ) {
        return new WP_Error( 'existing_user_email', __( 'Sorry, that email address is already used!' ) );
    }
    $raw_user_url = empty( $userdata['user_url'] ) ? '' : $userdata['user_url'];
    $user_url = apply_filters( 'pre_user_url', $raw_user_url );
    $user_registered = empty( $userdata['user_registered'] ) ? gmdate( 'Y-m-d H:i:s' ) : $userdata['user_registered'];
    $user_activation_key = empty( $userdata['user_activation_key'] ) ? '' : $userdata['user_activation_key'];
    if ( ! empty( $userdata['spam'] ) && ! is_multisite() ) {
        return new WP_Error( 'no_spam', __( 'Sorry, marking a user as spam is only supported on Multisite.' ) );
    }
    $spam = empty( $userdata['spam'] ) ? 0 : (bool) $userdata['spam'];
    $meta = array();
    $nickname = empty( $userdata['nickname'] ) ? $user_login : $userdata['nickname'];
    $meta['nickname'] = apply_filters( 'pre_user_nickname', $nickname );
    $first_name = empty( $userdata['first_name'] ) ? '' : $userdata['first_name'];
    $meta['first_name'] = apply_filters( 'pre_user_first_name', $first_name );
    $last_name = empty( $userdata['last_name'] ) ? '' : $userdata['last_name'];
    $meta['last_name'] = apply_filters( 'pre_user_last_name', $last_name );
    if ( empty( $userdata['display_name'] ) ) {
        if ( $update ) {
            $display_name = $user_login;
        } elseif ( $meta['first_name'] && $meta['last_name'] ) {
            /* translators: 1: User's first name, 2: Last name. */
            $display_name = sprintf( _x( '%1$s %2$s', 'Display name based on first name and last name' ), $meta['first_name'], $meta['last_name'] );
        } elseif ( $meta['first_name'] ) {
            $display_name = $meta['first_name'];
        } elseif ( $meta['last_name'] ) {
            $display_name = $meta['last_name'];
        } else {
            $display_name = $user_login;
        }
    } else {
        $display_name = $userdata['display_name'];
    }
    $display_name = apply_filters( 'pre_user_display_name', $display_name );
    $description = empty( $userdata['description'] ) ? '' : $userdata['description'];
    $meta['description'] = apply_filters( 'pre_user_description', $description );
    $meta['rich_editing'] = empty( $userdata['rich_editing'] ) ? 'true' : $userdata['rich_editing'];
    $meta['syntax_highlighting'] = empty( $userdata['syntax_highlighting'] ) ? 'true' : $userdata['syntax_highlighting'];
    $meta['comment_shortcuts'] = empty( $userdata['comment_shortcuts'] ) || 'false' === $userdata['comment_shortcuts'] ? 'false' : 'true';
    $admin_color         = empty( $userdata['admin_color'] ) ? 'fresh' : $userdata['admin_color'];
    $meta['admin_color'] = preg_replace( '|[^a-z0-9 _.\-@]|i', '', $admin_color );
    $meta['use_ssl'] = empty( $userdata['use_ssl'] ) ? 0 : (bool) $userdata['use_ssl'];
    $meta['show_admin_bar_front'] = empty( $userdata['show_admin_bar_front'] ) ? 'true' : $userdata['show_admin_bar_front'];
    $meta['locale'] = isset( $userdata['locale'] ) ? $userdata['locale'] : '';
    $compacted = compact( 'user_pass', 'user_nicename', 'user_email', 'user_url', 'user_registered', 'user_activation_key', 'display_name' );
    $data      = wp_unslash( $compacted );
    if ( ! $update ) {
        $data = $data + compact( 'user_login' );
    }
    if ( is_multisite() ) {
        $data = $data + compact( 'spam' );
    }
    $data = apply_filters( 'wp_pre_insert_user_data', $data, $update, $update ? (int) $ID : null );
     if ( empty( $data ) || ! is_array( $data ) ) {
        return new WP_Error( 'empty_data', __( 'Not enough data to create this user.' ) );
    }
    if ( $update ) {
        if ( $user_email !== $old_user_data->user_email || $user_pass !== $old_user_data->user_pass ) {
            $data['user_activation_key'] = '';
        }
        $wpdb->update( $wpdb->users, $data, compact( 'ID' ) );
        $user_id = (int) $ID;
    } else {
        $wpdb->insert( $wpdb->users, $data );
        $user_id = (int) $wpdb->insert_id;
    }
    $user = new WP_User( $user_id );
    $meta = apply_filters( 'insert_user_meta', $meta, $user, $update );
    // Update user meta.
    foreach ( $meta as $key => $value ) {
        update_user_meta( $user_id, $key, $value );
    }
    foreach ( wp_get_user_contact_methods( $user ) as $key => $value ) {
        if ( isset( $userdata[ $key ] ) ) {
            update_user_meta( $user_id, $key, $userdata[ $key ] );
        }
    }
    if ( isset( $userdata['role'] ) ) {
        $user->set_role( $userdata['role'] );
    } elseif ( ! $update ) {
        $user->set_role( get_option( 'default_role' ) );
    }
    clean_user_cache( $user_id );
    if ( $update ) {
       do_action( 'profile_update', $user_id, $old_user_data );
        if ( isset( $userdata['spam'] ) && $userdata['spam'] != $old_user_data->spam ) {
            if ( 1 == $userdata['spam'] ) {
            do_action( 'make_spam_user', $user_id );
            } else {
            do_action( 'make_ham_user', $user_id );
            }
        }
    } else {
        do_action( 'user_register', $user_id );
    }
    return $user_id;
}

Các tham số $userdata truyền vào wp_insert_user

Đây là các thông số có thể sử dụng để truyền vào hàm wp_insert_user. Trong số này quan trọng nhất là ID. Nếu có ID thì nó sẽ update thông tin thành viên với ID đó. Nếu không có ID thì nó sẽ thêm mới thành viên và giá trị trả về là ID của thành viên được thêm.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$userdata = array(
    'ID'                    => 0,    //(int) User ID. If supplied, the user will be updated.
    'user_pass'             => '',   //(string) The plain-text user password.
    'user_login'            => '',   //(string) The user's login username.
    'user_nicename'         => '',   //(string) The URL-friendly user name.
    'user_url'              => '',   //(string) The user URL.
    'user_email'            => '',   //(string) The user email address.
    'display_name'          => '',   //(string) The user's display name. Default is the user's username.
    'nickname'              => '',   //(string) The user's nickname. Default is the user's username.
    'first_name'            => '',   //(string) The user's first name. For new users, will be used to build the first part of the user's display name if $display_name is not specified.
    'last_name'             => '',   //(string) The user's last name. For new users, will be used to build the second part of the user's display name if $display_name is not specified.
    'description'           => '',   //(string) The user's biographical description.
    'rich_editing'          => '',   //(string|bool) Whether to enable the rich-editor for the user. False if not empty.
    'syntax_highlighting'   => '',   //(string|bool) Whether to enable the rich code editor for the user. False if not empty.
    'comment_shortcuts'     => '',   //(string|bool) Whether to enable comment moderation keyboard shortcuts for the user. Default false.
    'admin_color'           => '',   //(string) Admin color scheme for the user. Default 'fresh'.
    'use_ssl'               => '',   //(bool) Whether the user should always access the admin over https. Default false.
    'user_registered'       => '',   //(string) Date the user registered. Format is 'Y-m-d H:i:s'.
    'show_admin_bar_front'  => '',   //(string|bool) Whether to display the Admin Bar for the user on the site's front end. Default true.
    'role'                  => '',   //(string) User's role.
    'locale'                => '',   //(string) User's locale. Default empty.
);

Cách sử dụng hàm wp_inser_user

Cách sử dụng hàm wp_insert_user khá đơn giản. Đầu tiên bạn phải khai báo các trường cần thêm cho user đó trong mảng $userdata. Sau đó dùng hàm này để thêm vào.
Ví dụ khi thêm mới thành viên:

1
2
3
4
5
6
7
8
9
10
11
12
13
$website = "https://huyhoa.net";
$userdata = array(
    'user_login' =>  'admin',
    'user_url'   =>  $website,
    'user_email' =>  '[email protected]',
    'user_registered' => date_i18n('Y-m-d H:i:s'),
    'user_pass'  =>  md5(abc1234) // When creating an user, `user_pass` is expected.
);
$user_id = wp_insert_user( $userdata ) ;
// On success.
if ( ! is_wp_error( $user_id ) ) {
    echo "User created : ". $user_id;
}

Ví dụ khi cập nhật (update) thông tin thành viên.

1
2
3
4
5
6
$user_id = 6;  // Cập nhật thông tin thành viên có ID là 6
$website = 'https://huyhoa.net';
wp_insert_user( [
'ID'       => $user_id,
'user_url' => $website
] ) ;

Vì hàm này không mã hóa thông tin mật khẩu, nên nếu các bạn dùng wp_insert_user mà để password dạng text thì user sẽ không sử dụng được mật khẩu đó. Ví dụ bên trên mình phải khai báo bằng cách mã hóa md5 cho mật khẩu abc1234.

Nếu các bạn cập nhật thông tin thành viên thì nên sử dụng hàm wp_update_user thì khi khai báo user_pass => ‘abc1234’ nó sẽ tự động mã hóa mật khẩu dùng hàm wp_hash_password().

wp_insert_user và user role

Như bên trên đã phân tích, khi thêm thành viên mới (add user), ta có thể truyền giá trị role vào mảng $userdata, nhưng mình gặp trường hợp wp_insert_user role not working rồi. Đây là cách xử lý của mình để có thể thêm user role một cách chuẩn xác:

1
2
3
4
5
6
7
8
9
10
11
12
13
$userdata = array (
        'user_login'    =>  $username,
        'user_email'    =>  $email,
        'user_pass'     =>  md5($password),
        'user_url'      =>  $website,
        'first_name'    =>  $first_name,
        'last_name'     =>  $last_name,
        'nickname'      =>  $nickname,
        'description'   =>  $bio,
    ) ;
    $id = wp_insert_user( $userdata ) ;
    wp_update_user( array ('ID' => $id, 'role' => 'editor') ) ;
 

Trong trường hợp này, để giải quyết vấn đề wp_insert_user role not working thì mình làm 2 bước, bước đầu tiên là thêm thành viên đó vào cơ sở dữ liệu. Sau đó khi thêm thành công nó sẽ trả về id của thành viên đó nên mình tiếp tục cập nhật role cho thành viên đó dùng hàm wp_update_user

wp_insert_user trả về giá trị 0 khi thêm thành viên mới

Một vấn đề nữa khi sử dụng hàm này là thi thoảng khi thêm thành viên mới, giá trị trả về không phải là ID của thành viên mà lại là 0. Đây là trường hợp mình cũng từng gặp phải. Nguyên nhân là do một trong các trường các bạn insert dữ liệu trong mảng $userdata bị quá ký tự. Ví dụ như trường url nó chỉ nhận 100 ký tự, nếu bạn chèn website vào trường url có quá 100 ký tự thì chắc chắn giá trị trả về của hàm wp_insert_user($userdata) chắc chắn sẽ là 0.

Một số ví dụ mẫu dùng hàm wp_insert_user()

Hàm đăng ký thành viên qua Ajax

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
function ajax_register()
{
    // First check the nonce, if it fails the function will break
    check_ajax_referer('ajax-register-nonce', 'security');
    // Nonce is checked, get the POST data and sign user on
    $info = array();
    $info['user_nicename'] = $info['nickname'] = $info['display_name'] = $info['first_name'] = $info['user_login'] = sanitize_user($_POST['username']);
    $info['user_pass'] = sanitize_text_field($_POST['password']);
    $info['user_email'] = sanitize_email($_POST['email']);
    // Register the user
    $user_register = wp_insert_user($info);
    if (is_wp_error($user_register)) {
        $error = $user_register->get_error_codes();
        if (in_array('empty_user_login', $error)) {
            echo json_encode(array('loggedin' => false, 'message' => __('Xin lỗi, thông tin đăng nhập không hợp lệ.')));
        } else {
            if (in_array('existing_user_login', $error)) {
                echo json_encode(array('loggedin' => false, 'message' => __('Xin lỗi, tên đăng nhập này đã tồn tại.')));
            } else {
                if (in_array('existing_user_email', $error)) {
                    echo json_encode(array('loggedin' => false, 'message' => __('Xin lỗi, email này đã tồn tại.')));
                }
            }
        }
        //        else echo json_encode(array('loggedin'=>false, 'message'=>__($user_register->get_error_messages($error))));
    } else {
        wp_insert_user($info);
        echo json_encode(array('loggedin' => true, 'message' => __('Đăng ký thành công.')));
    }
    die;
}

Hàm đăng ký thành viên hoặc login sử dụng Instagram

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
function ins_oauth()
{
    $code = $_GET['code'];
    $url = "https://api.instagram.com/oauth/access_token";
    $data = array('client_id' => INS_APPID, 'client_secret' => INS_APPSECRET, 'grant_type' => 'authorization_code', 'redirect_uri' => home_url('/?type=instagram'), 'code' => $code);
    $response = wp_remote_post($url, array('method' => 'POST', 'body' => $data));
    $output = json_decode($response['body'], true);
    $token = $output['access_token'];
    $user = $output['user'];
    $ins_id = $user['id'];
    $name = $user['username'];
    if (!$ins_id) {
        wp_redirect(home_url('/?3' . $douban_id));
        exit;
    }
    if (is_user_logged_in()) {
        $this_user = wp_get_current_user();
        update_user_meta($this_user->ID, "instagram_id", $ins_id);
        ins_ouath_redirect();
    } else {
        $user_ins = get_users(array("meta_key " => "instagram_id", "meta_value" => $ins_id));
        if (is_wp_error($user_ins) || !count($user_ins)) {
            $login_name = wp_create_nonce($ins_id);
            $random_password = wp_generate_password($length = 12, $include_standard_special_chars = false);
            $userdata = array('user_login' => $login_name, 'display_name' => $name, 'user_email' => '', 'user_pass' => $random_password, 'nick_name' => $name);
            $user_id = wp_insert_user($userdata);
            wp_signon(array("user_login" => $login_name, "user_password" => $random_password), false);
            update_user_meta($user_id, "instagram_id", $ins_id);
            ins_ouath_redirect();
        } else {
            wp_set_auth_cookie($user_ins[0]->ID);
            ins_ouath_redirect();
        }
    }
}

Hàm đăng ký thành viên trong plugin hoặc mã nguồn của bên thứ 3:

1
2
3
4
5
6
public function registration($name, $pass, $email, $money)
{
     $data = array('user_pass' => $pass, 'user_login' => $name, 'user_email' => $email, 'perfectmoney' => $money);
     $user_id = wp_insert_user($data);
}
 

MASS IMPORT USERS INTO WORDPRESS

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
include('includes/connection.php');
$query2 = "SELECT * FROM users";
$result2 = mysqli_query( $conn, $query2);
  if( mysqli_num_rows($result2) > 0 ) {
    while( $row = mysqli_fetch_assoc($result2) ) {
    $name = $row['name'];
        echo "<strong>ID:</strong>".$row['id']." <strong>login:</strong>".$row->user_name." <strong>password:</strong> ".$row->password." <strong>e-mail:</strong>".$row->email_address." <strong>name:</strong> ".$row->name." <strong>surname:</strong> ".$row->surname."<br/>";
        // Add the ID to trick WP
        $add_id = "INSERT INTO ".$wpdb->users." (id, user_login) VALUES (".$row->id.",'"."$row->user_name"."' ); ";
         mysql_query($add_id) or die(mysql_error());
        // Add the rest
        $userdata = array(
         'ID' => $row->id,
         'user_login' => $row->user_name,
         'user_pass' => wp_hash_password($row->password),
         'user_nicename' => $row->user_name,
         'user_email' => $row->email_address,
         'first_name'  => $row->name,
         'last_name'  => $row->surname,
         'role' => 'subscriber'
        );
        wp_insert_user($userdata) ;
    }
}
mysql_close($connection);

wp_insert_user khác gì so với wp_create_user

Để hiểu sự khác nhau giữa wp_insert_user và wp_create_user thì ta xem hai ví dụ bên dưới đây

wp_create_user:

1
$user_id = wp_create_user( $user_name, $random_password, $user_email );

wp_insert_user:

1
2
3
4
5
6
7
8
9
10
11
12
$userdata = array (
        'user_login'    =>  $user_name,
        'user_email'    =>  $user_email,
        'user_pass'     =>  md5($random_password),
        'user_url'      =>  $website,
        'first_name'    =>  $first_name,
        'last_name'     =>  $last_name,
        'nickname'      =>  $nickname,
        'description'   =>  $bio,
    ) ;
    $user_id = wp_insert_user( $userdata ) ;
 

Có thể thấy, hai hàm này đều có chức năng là insert thành viên vào cơ sở dữ liệu, tuy nhiên wp_create_user khá đơn giản. Nó chỉ thêm username, mật khẩu và email của thành viên. Ngoài ra không thể thêm các meta data cho user được.  wp_insert_user thì khác, nó có thể thêm khá nhiều dữ liệu được truyền trong mảng $userdata.

Trên thực tế thì wp_create_user cũng sẽ dùng hàm wp_insert_user để thêm thành viên vào cơ sở dữ liệu. Có thể thấy rõ điều này khi xem chi tiết về hàm wp_create_user  tại file này: wp-includes/user.php

1
2
3
4
5
6
7
8
function wp_create_user( $username, $password, $email = '' ) {
    $user_login = wp_slash( $username );
    $user_email = wp_slash( $email );
    $user_pass  = $password;
    $userdata = compact( 'user_login', 'user_email', 'user_pass' );
    return wp_insert_user( $userdata );
}

Trên đây là những thông tin cần thiết và hữu ích trong quá trình sử dụng hàm wp_insert_user. Hy vọng nó mang lại cho các bạn cái nhìn chi tiết hơn về cách sử dụng hàm này. Nếu có khó khăn gì hoặc cần trợ giúp gì, các bạn có thể comment bên dưới, bọn mình sẽ cố gắng hỗ trợ nhanh nhất có thể.

Ngoài ra, các bạn cũng có thể tham khảo thêm một số thông tin về hàm này tại trang web dành cho nhà phát triển ứng dụng WordPress tại đây: https://developer.wordpress.org/reference/functions/wp_insert_user/

Wordpress
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleBộ ảnh đẹp lung linh của Bản Phùng, Hoàng Su Phì, Hà Giang
Next Article get_the_post_thumbnail_url – Get the post thumbnail URL with example
Huy Hoa
  • Website

Related Posts

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

Hướng dẫn 2 cách xóa phông nền ảnh Online không cần Photoshop

Cách làm mịn da mặt bằng Photoshop mà vẫn giữ được lỗ chân lông

20 công cụ tách nền ảnh tốt nhất và hoàn toàn miễn phí

Cách hiển thị Category trong WordPress sử dụng get category với get_categories()

Hướng dẫn cài đặt, sử dụng, cấu hình Contact Form 7 đầy đủ nhất

Hướng dẫn sử dụng Cloudflare DNS, Cloudflare CDN và bảo mật từ A-Z

get_the_post_thumbnail_url – Get the post thumbnail URL with example

WP_Query: Tất cả những thông tin bạn cần biết

Leave A Reply Cancel Reply

SEO - Marketing

get_the_post_thumbnail_url – Get the post thumbnail URL with example

get_the_post_thumbnail_url là hàm dùng để lấy đường dẫn file ảnh đại diện (post thumbnail) của bài viết. Trong Wordpress, hình đại diện của bài viết…

Hàm get_posts() WordPress: Cách sử dụng và ví dụ cụ thể

Cách dùng hàm get_post() trong WordPress để lấy dữ liệu bài viết

Hướng dẫn sử dụng hàm get_terms trong WordPress

Hướng dẫn sử dụng các hàm esc_html_e(), esc_html__(), esc_html() trong WordPress

Hàm get_post_meta() WordPress: Cách sử dụng và ví dụ cụ thể

Hướng dẫn sử dụng hàm get_the_date trong WordPress

Thiết kế Web - Đồ Họa

20 công cụ tách nền ảnh tốt nhất và hoàn toàn miễn phí

Tách nền hình ảnh là một việc cực kỳ khó làm trước khi các công cụ xóa nền ảnh sử dụng AI ra đời. Dù…

Hướng dẫn sử dụng các hàm esc_html_e(), esc_html__(), esc_html() trong WordPress

Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

Giải mã MD5 được không? Những website dịch ngược mã MD5 online tốt nhất

11 Plugin Thống Kê Truy Cập WordPress tốt nhất

33 Hàm Trong WordPress Hay Sử Dụng Nhất

Wordpress - Woocommerce

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

Biết một chút về SEO là điều bắt buộc đối với bất kỳ chủ sở hữu trang web nào trong thời đại ngày nay. Tối ưu…

33 Hàm Trong WordPress Hay Sử Dụng Nhất

Hướng dẫn sử dụng wp_insert_user có ví dụ cụ thể

Cách dùng hàm get_post() trong WordPress để lấy dữ liệu bài viết

Giải mã MD5 được không? Những website dịch ngược mã MD5 online tốt nhất

Hướng dẫn sử dụng hàm get_terms trong WordPress

WP_Query: Tất cả những thông tin bạn cần biết

Bài viết mới

Test

15 cách làm trắng răng tại nhà cực kỳ hiệu quả và dễ áp dụng

50+ website tải Sound Effects chất lượng cao miễn phí và có phí

Đánh giá 10 phần mềm SEO AI tốt nhất hiện nay

Hướng dẫn 2 cách xóa phông nền ảnh Online không cần Photoshop

Cách làm mịn da mặt bằng Photoshop mà vẫn giữ được lỗ chân lông

20 công cụ tách nền ảnh tốt nhất và hoàn toàn miễn phí

Sự khác nhau giữa Collagen và Axit Hyaluronic

Tác dụng cấp ẩm của Axit Hyaluronic cho làn da tươi trẻ, không nếp nhăn

Cách hiển thị Category trong WordPress sử dụng get category với get_categories()

© 2025 All Rights Reserved HuyHoa.Net. DMCA.com Protection Status .
Hosted by Dreamhost. Follow us on Follow Huy Hoa on Google News Google News.
  • Giới thiệu
  • Bảo mật
  • Quy định sử dụng
  • Liên hệ

Type above and press Enter to search. Press Esc to cancel.