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
  • Nước vo gạo và những công dụng tuyệt vời mà bạn chưa biết
  • 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
  • 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
Thứ Sáu, Tháng Ba 31
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.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:

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

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.

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

Search
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

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

Trong WordPress, get_template_part() là một hàm hữu ích dùng để gọi và chèn nội dung files khác vào giao diện. Bạn có thể sử dụng…

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

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

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

get_user_by: Hướng dẫn 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

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

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

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

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

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

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

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

Bài viết mới

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

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

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

© 2023 All Rights Reserved  by  HuyHoa.Net. DMCA.com Protection Status .
Hosted by Dreamhost. Follow us on  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.