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ệ
Trending
  • Nước vo gạo có tác dụng gì và cách sử dụng hiệu quả
  • Kinh nghiệm SEO onpage cho các loại website khác nhau
  • Nước vo gạo và những công dụng tuyệt vời mà bạn chưa biết
  • SEO Onpage là gì và tại sao cần tối ưu SEO Onpage
  • 21 Serum HA tốt nhất hiện nay cho da khô, da dầu nhờn và trị mụn
Thứ Ba, Tháng 5 20
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

  • 1 Hàm get_user_by nằm ở đâu?
  • 2 Cách sử dụng hàm get_user_by()
  • 3 Giá trị trả về của hàm get_user_by
  • 4 Một số ví dụ về cách dùng hàm get_user_by

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.2.2. 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:

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

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’ ).

$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ụ:

$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ề:

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:

$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.

$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:

$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:

$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:

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:

$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:

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:

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:

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

References:

4.9/5 - (32 bình chọn)
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.

In Case You Missed It

Kinh nghiệm SEO onpage cho các loại website khác nhau
SEO Onpage là gì và tại sao cần tối ưu SEO Onpage
20 cách tối ưu SEO onpage cho website cơ bản đến nâng cao
Đá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

Leave A Reply Cancel Reply

Search
SEO - Marketing

SEO Onpage là gì và tại sao cần tối ưu SEO Onpage

Nếu bạn đang sở hữu một website và muốn nâng cao thứ hạng của nó trên các công cụ tìm kiếm như Google, Bing bạn…

Kinh nghiệm SEO onpage cho các loại website khác nhau

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

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

get_the_post_thumbnail_url – Get the post thumbnail URL with example

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

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

Cách sử dụng thước đo (ruler) trong Photoshop

Thước đo (ruler) là thanh công cụ được tích hợp sẵn trong Photoshop, tuy nhiên đôi lúc nó bị ẩn đi. Bài viết này sẽ…

Download bộ Font chữ viết tay đẹp nhất hiện nay

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

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

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

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

get_the_post_thumbnail_url – Get the post thumbnail URL with example

Wordpress - Woocommerce

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

Hàm get_post() trong WordPress dùng để lấy dữ liệu của bài viết cụ thể nào đó (theo post_id) như tiêu đề, tác giả, ngày giờ…

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

get_the_post_thumbnail_url – Get the post thumbnail URL with example

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

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

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

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

Bài viết mới

Nước vo gạo có tác dụng gì và cách sử dụng hiệu quả

Kinh nghiệm SEO onpage cho các loại website khác nhau

Nước vo gạo và những công dụng tuyệt vời mà bạn chưa biết

SEO Onpage là gì và tại sao cần tối ưu SEO Onpage

21 Serum HA tốt nhất hiện nay cho da khô, da dầu nhờn và trị mụn

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

20 cách tối ưu SEO onpage cho website cơ bản đến nâng cao

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

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

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