Thêm cột user đăng nhập lần cuối WordPress

Ngày đăng: 27 - 04 - 2021 Lượt xem: 77 lượt

Thêm cột user đăng nhập lần cuối WordPress như thế nào?

Hôm nay mình sẽ hướng dẫn làm thế nào để biết thời điểm cuối cùng người dùng đã đăng nhập vào website của bạn.

Bước 1. Lưu thời điểm cuối Login trong User Meta

Trước khi hiển thị ngày đăng nhập cuối cùng cho mỗi tài khoản người dùng, chúng ta phải thu thập nó trong mỗi lần người dùng đăng nhập vào website của bạn.

add_action( 'wp_login', 'misha_collect_login_timestamp', 20, 2 );
 
function misha_collect_login_timestamp( $user_login, $user ) {
 
	update_user_meta( $user->ID, 'last_login', time() );
 
}

Bạn sao chép đoạn mã này đến tệp functions.php của giao diện hiện tại.

Đoạn code này cho phép WordPress bắt đầu lưu thời gian  vào trong bảng wp_usermeta mỗi khi một người dùng đăng nhập vào trang web của bạn.

Bước 2. Hiển thị thông tin trên trang All Users

add_filter( 'manage_users_columns', 'misha_add_last_login_column' );
add_filter( 'manage_users_custom_column', 'misha_last_login_column', 10, 3 );
 
function misha_user_last_login_column( $columns ) {
 
	$columns['last_login'] = 'Last Login'; // column ID / column Title
	return $columns;
 
}
 
function misha_last_login_column( $output, $column_id, $user_id ){
 
	if( $column_id == 'last_login' ) {
 
		$last_login = get_user_meta( $user_id, 'last_login', true );
		$date_format = 'j M, Y';
 
		$output = $last_login ? date( $date_format, $last_login ) : '-';
 
	}
 
	return $output;
 
}

Thêm xắp xếp (Sortable) cho cột

Bước này không bắt buộc nhưng khá hữu ích vì nó cho phép bạn xắp xếp thời gian nếu bạn muốn biết người dùng nào đang hoạt động tích cực ở gần đây.

add_filter( 'manage_users_sortable_columns', 'misha_sortable_columns' );
add_action( 'pre_get_users', 'misha_sort_last_login_column' );
 
function misha_sortable_columns( $columns ) {
 
	return wp_parse_args( array(
	 	'last_login' => 'last_login'
	), $columns );
 
});
 
function misha_sort_last_login_column( $query ) {
 
	if( !is_admin() ) {
		return $query;
	}
 
	$screen = get_current_screen();
 
	if( isset( $screen->id ) && $screen->id !== 'users' ) {
		return $query;
	}
 
	if( isset( $_GET[ 'orderby' ] ) && $_GET[ 'orderby' ] == 'last_login' ) {
 
		$query->query_vars['meta_key'] = 'last_login';
		$query->query_vars['orderby'] = 'meta_value';
 
	}
 
	return $query;
 
} );

Lời kết

Chỉ với đoạn code đơn giản trên, bạn đã hiển thị thêm cột user đăng nhập lần cuối WordPress.

Nếu các bạn thấy hay có thể theo dõi chuyên mục thủ thuật wordpress để biết thêm nhiều kiến thức mới nha.

Hãy follow fanpage để nhận được những bài viết mới nhất nhé : Hocwordpress Group

Chúc bạn có những kiến thức về  wordpress thú vị và hay ho !

0 0 votes
Article Rating

Mục lục
guest
0 Comments
Inline Feedbacks
View all comments

Bài viết liên quan

WordPress Nonce là gì? Cách để ngăn chặn một cuộc tấn công CSRF

WordPress Nonce là gì? Cách để ngăn chặn một cuộc tấn công CSRF

15 - 09 - 2021

Tấn công CSRF là gì? Tấn công CSRF (Cross Site Request Forgery) là một kỹ thuật tấn công có khả...

TOP 5 Plugin Accordion WordPress tốt nhất

TOP 5 Plugin Accordion WordPress tốt nhất

10 - 06 - 2021

Accordion giúp web của bạn  gọn gàng cho phép bạn hiển thị nội dung trong các tab có thể...

Tạo Accordion trong wordpress

Tạo Accordion trong wordpress

10 - 06 - 2021

Accordion là giúp web gọn gàng cho phép bạn hiển thị nội dung trong các tab có thể thu...

Tạo post phổ biến trong MonsterInsights

Tạo post phổ biến trong MonsterInsights

09 - 06 - 2021

Tạo post phổ biến trong MonsterInsights như thế nào ? MonsterInsights  là plugin giúp việc thiết lập Google Analytics trở...

Tạo landing page với SeedProd

Tạo landing page với SeedProd

09 - 06 - 2021

Tạo landing page với SeedProd như thế nào? SeedProd là plugin kéo và thả trang đích phổ biến nhất cho...

Cập nhập Wordpress sao cho an toàn

Cập nhập Wordpress sao cho an toàn

04 - 06 - 2021

Cập nhập Wordpress sao cho an toàn là như thế nào ? Mỗi bản cập nhật WordPress đều có những...

0
Would love your thoughts, please comment.x
()
x