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 8
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»get_user_by: Hướng dẫn sử dụng và ví dụ cụ thể

get_user_by: Hướng dẫn sử dụng và ví dụ cụ thể

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

get_user_by là hàm dùng để lấy thông tin về thành viên dựa trên một trường cụ thể nào đó. get_user_by() có thể dùng để lấy thông tin user dựa trên username, login name, user id, user_email,…

Theo như giải thích của phía nhà phát triển WordPress thì get_user_by là một pluggable function, tức là nó có thể được thay thế bằng một plugin. Có nghĩa là chức năng này chỉ được hoạt động sau khi tất cả các plugin đã được tải. Trước thời điểm này, hàm này chưa được xác định, do đó, bạn không thể gọi hàm này và tất cả các hàm phụ thuộc vào hàm này trực tiếp từ trong plugin.

Hướng dẫn sử dụng hàm get_user_by() với các ví dụ cụ thể
Hướng dẫn sử dụng hàm get_user_by() với các ví dụ cụ thể

Chúng cần được gọi trên hook plugins_loaded trở lên, ví dụ như trên init hook. Ngoài ra, nếu trong plugin, bạn tạo một function với tên get_user_by thì hàm này sẽ bị ghi đè và function bạn tạo mới sẽ được sử dụng.

Table of Contents

Hàm get_user_by nằm ở đâu?

Hàm này nằm ở lõi (core) của WordPress. Nó được giới thiệu lần đầu tiên trong bản WordPress 2.8.0, sau đó được cải tiến và được sử dụng đến tận bây giờ là phiên bản 6.1. Tại phiên bản 4.4.0 thì có thêm một cải tiến là thêm ID (chữ in hoa) thành alias cho id (chữ thường). Bạn có thể tìm thấy hàm get_user_by ở file này: wp-includes/pluggable.php

Cấu trúc:

1
2
3
4
5
6
7
8
9
10
11
12
function get_user_by( $field, $value ) {
    $userdata = WP_User::get_data_by( $field, $value );
    if ( ! $userdata ) {
        return false;
    }
    $user = new WP_User;
    $user->init( $userdata );
    return $user;
}

Cách sử dụng hàm get_user_by()

Hàm get_user_by cần 2 thông số truyền vào để nó có thể xử lý. Bắt buộc phải có 2 tham số $field và $value, thiếu một trong 2 tham số sẽ đều cho kết quả rỗng (false). Cách sử dụng như sau

1
get_user_by( $field, $value )

Trong đó:
$field là dữ liệu dạng string, truyền vào để xác định trường cần so sánh dữ liệu. $field ở đây có thể là username, user_id, user_email...
$value là giá trị để so sánh, $value có thể là số nếu $field là id, có thể là text nếu $field là username hoặc name, có thể là email nếu $field là user_email

lưu ý là $field nó phân biệt chữ hoa chữ thường. Ví dụ id khác với login nên get_user_by( ‘LOGIN’, ‘admin’ ) sẽ không trả về kết quả gì, câu lệnh đúng phải là get_user_by( ‘login, ‘admin’ ).

1
2
$user = get_user_by( 'id', '7' );
echo "Bài được viết bởi: $user->display_name";

Giá trị trả về của hàm get_user_by

Giá trị trả về của hàm get_user_by là một object chứa dữ liệu các trường thông tin về thành viên đó nếu có kết quả. Giá trị là rỗng nếu không có kết quả.
Ví dụ:

1
2
$tac_gia = get_user_by('id', 1);  // lấy tất cả các thông tin về thành viên có id là 1
 

Giá trị trả về:

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
161
162
163
164
165
166
167
168
169
170
171
object(WP_User)#96 (7) {
["data"]=>
object(stdClass)#95 (10) {
["ID"]=>
string(1) "1"
["user_login"]=>
string(10) "superadmin"
["user_pass"]=>
string(34) "$P$Bx0Jgq5/Qw/o3A8fXcVKg4jxQraPAB3"
["user_nicename"]=>
string(10) "superadmin"
["user_email"]=>
string(16) "[email protected]"
["user_url"]=>
string(0) ""
["user_registered"]=>
string(19) "2014-02-21 21:31:40"
["user_activation_key"]=>
string(0) ""
["user_status"]=>
string(1) "0"
["display_name"]=>
string(10) "superadmin"
}
["ID"]=>
int(1)
["caps"]=>
array(1) {
["administrator"]=>
bool(true)
}
["cap_key"]=>
string(25) "wp_capabilities"
["roles"]=>
array(1) {
[0]=>
string(13) "administrator"
}
["allcaps"]=>
array(63) {
["switch_themes"]=>
bool(true)
["edit_themes"]=>
bool(true)
["activate_plugins"]=>
bool(true)
["edit_plugins"]=>
bool(true)
["edit_users"]=>
bool(true)
["edit_files"]=>
bool(true)
["manage_options"]=>
bool(true)
["moderate_comments"]=>
bool(true)
["manage_categories"]=>
bool(true)
["manage_links"]=>
bool(true)
["upload_files"]=>
bool(true)
["import"]=>
bool(true)
["unfiltered_html"]=>
bool(true)
["edit_posts"]=>
bool(true)
["edit_others_posts"]=>
bool(true)
["edit_published_posts"]=>
bool(true)
["publish_posts"]=>
bool(true)
["edit_pages"]=>
bool(true)
["read"]=>
bool(true)
["level_10"]=>
bool(true)
["level_9"]=>
bool(true)
["level_8"]=>
bool(true)
["level_7"]=>
bool(true)
["level_6"]=>
bool(true)
["level_5"]=>
bool(true)
["level_4"]=>
bool(true)
["level_3"]=>
bool(true)
["level_2"]=>
bool(true)
["level_1"]=>
bool(true)
["level_0"]=>
bool(true)
["edit_others_pages"]=>
bool(true)
["edit_published_pages"]=>
bool(true)
["publish_pages"]=>
bool(true)
["delete_pages"]=>
bool(true)
["delete_others_pages"]=>
bool(true)
["delete_published_pages"]=>
bool(true)
["delete_posts"]=>
bool(true)
["delete_others_posts"]=>
bool(true)
["delete_published_posts"]=>
bool(true)
["delete_private_posts"]=>
bool(true)
["edit_private_posts"]=>
bool(true)
["read_private_posts"]=>
bool(true)
["delete_private_pages"]=>
bool(true)
["edit_private_pages"]=>
bool(true)
["read_private_pages"]=>
bool(true)
["delete_users"]=>
bool(true)
["create_users"]=>
bool(true)
["unfiltered_upload"]=>
bool(true)
["edit_dashboard"]=>
bool(true)
["update_plugins"]=>
bool(true)
["delete_plugins"]=>
bool(true)
["install_plugins"]=>
bool(true)
["update_themes"]=>
bool(true)
["install_themes"]=>
bool(true)
["update_core"]=>
bool(true)
["list_users"]=>
bool(true)
["remove_users"]=>
bool(true)
["add_users"]=>
bool(true)
["promote_users"]=>
bool(true)
["edit_theme_options"]=>
bool(true)
["delete_themes"]=>
bool(true)
["export"]=>
bool(true)
["administrator"]=>
bool(true)
}
["filter"]=>
NULL
}
 

Để code sạch và tránh lỗi thì các bạn nên validate kết quả trước khi xử lý dữ liệu. Ví dụ như sau:

1
2
3
4
$user = get_user_by( 'email', '[email protected]');
if ( ! empty( $user ) ) {
echo 'User is ' . $user->first_name . '' . $user->last_name;
}

Một số ví dụ về cách dùng hàm get_user_by

Lấy thông tin thành viên dựa trên id của thành viên.

1
2
$user = get_user_by( 'id', '7' );  // Lấy thông tin của thành viên có id là 7
echo "Submitted by $user->display_name";

Lấy thông tin của thành viên dựa trên email:

1
2
$user = get_user_by( 'email', '[email protected]' );
echo "Submitted by $user->display_name";

Lấy thông tin thành viên dựa vào login name:

1
2
$user = get_user_by( 'login', 'min' );
echo "Submitted by $user->display_name";

Lấy thông tin thành viên dựa vào username:

1
2
3
4
5
6
7
8
9
10
global $wpdb;
$username = 'admin';
$email = $wpdb->get_var( $wpdb->prepare("
SELECT user_email
FROM $wpdb->users
WHERE user_login = %s
",
$username
) );
echo "$username's email is: $email";

Lấy thông tin thành viên dựa vào slug:

1
2
$user = get_user_by( 'slug', 'gia-han' );
echo "Submitted by $user->display_name";

Lấy thông tin thành viên dựa vào first name hoặc last name:

Theo first name:

1
2
3
4
5
6
7
8
9
global $wpdb;
$users = $wpdb->get_results( "SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'first_name' AND meta_value = 'Hân'" );
if( $users ) {
foreach ( $users as $user ) {
echo '<p>' . $user->user_id . '</p>';
}
} else {
echo 'There are no users with the specified first name.';
}

Theo last name:

1
2
3
4
5
6
7
8
9
global $wpdb;
$users = $wpdb->get_results( "SELECT user_id FROM $wpdb->usermeta WHERE meta_key = 'last_name' AND meta_value = 'Gia'" );
if( $users ) {
foreach ( $users as $user ) {
echo '<p>' . $user->user_id . '</p>';
}
} else {
echo 'There are no users with the specified first name.';
}

Get the user id by its display_name:

1
2
3
4
5
6
7
8
function get_user_id_by_display_name( $display_name ) {
    global $wpdb;
    if ( ! $user = $wpdb->get_row( $wpdb->prepare(
        "SELECT `ID` FROM $wpdb->users WHERE `display_name` = %s", $display_name
    ) ) )
        return false;
    return $user->ID;
}

Tham khảo thêm thông tin tại trang WordPress Developer

Wordpress
Share. Facebook Twitter Pinterest LinkedIn Tumblr Email
Previous ArticleCách sử dụng thước đo (ruler) trong Photoshop
Next Article WP_Query: Tất cả những thông tin bạn cần biết
Gia Han
  • Website

Chào bạn, mình là Gia Hân. Mình học về dược sỹ nhưng hiện tại chỉ làm nội trợ và mỹ phẩm handmade. Mình cũng có chút ít kiến thức về tin học như wordpress, joomla, hay SEO nhưng cũng chỉ ở mức đủ dùng, chưa thể làm thầy được. Các bài mình viết dựa chính trên kinh nghiệm của bản thân và thực tế sử dụng. Sẽ không tránh khỏi sai sót, nếu các bạn phát hiện thấy sai sót nào thì nhắn giúp để mình sửa nhé. Mục liên hệ ở đây.

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

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

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

get_user_by: Hướng dẫn sử dụng và ví dụ cụ thể

get_user_by là hàm dùng để lấy thông tin về thành viên dựa trên một trường cụ thể nào đó. get_user_by() có thể dùng để lấy…

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

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

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

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

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

Wordpress - Woocommerce

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 Cloudflare DNS, Cloudflare CDN và bảo mật từ A-Z

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

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

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

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

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

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.