Hiển thị ngày đăng ký của người dùng vào trang tất cả người dùng

Giả sử rằng có một cuộc tấn công spam vào trang web của bạn. Có gần 50 người dùng spam đã đăng ký, nhưng trang web của bạn có tận hơn 1000 người dùng. Làm cách nào để xóa 50 người dùng gần nhất mà không cần truy cập vào database?

Đây chính là giải pháp:

Trên ảnh chụp màn hình này, cột Ngày đăng ký được thêm vào. Và khi bạn nhấp vào tiêu đề của cột, những người dùng trong bảng này sẽ được sắp xếp theo ngày đăng ký của họ – từ mới nhất hoặc cũ nhất.

Mình đã có một bài viết tương tự nhưng với dữ liệu hiển thị là lần đăng nhập cuối cùng của người dùng. Nếu bạn quan tâm đến chủ đề tương tự, đừng bỏ qua bài viết đó nhé.

Tạo cột mới trong trang người dùng

Bạn hãy thêm đoạn code dưới đây vào file functions.php của theme bạn đang sử dụng nhé.

add_filter( 'manage_users_columns', 'hk_modify_user_table' );
function hk_modify_user_table( $columns ) {

 $columns['registration_date'] = 'Ngày đăng ký';

 return $columns;

}

add_filter( 'manage_users_custom_column', 'hk_modify_user_table_row', 10, 3 );
function hk_modify_user_table_row( $row_output, $column_id_attr, $user ) {
 
 $date_format = 'j M, Y H:i';

 switch ( $column_id_attr ) {
  case 'registration_date' :
   return date( $date_format, strtotime( get_the_author_meta( 'registered', $user ) ) );
   break;
  default:
 }

 return $row_output;

}

Ở phần hiển thị dữ liệu, mình sử dụng hàm get_the_author_meta và truyền vào tham số registered để lấy được thời gian đăng ký. Bạn cũng có thể tìm hiểu hàm này và hiển thị thêm các dữ liệu khác nhau tuỳ theo nhu cầu của bạn nhé!

Làm cho cột dữ liệu có thể sắp xếp được

Để cột Ngày đăng ký có thể sắp xếp được. Bạn hãy sử dụng đoạn code dưới đây và tiếp tục thêm nó vào file functions.php nhé.

add_filter( 'manage_users_sortable_columns', 'hk_make_registered_column_sortable' );

function hk_make_registered_column_sortable( $columns ) {
 return wp_parse_args( array( 'registration_date' => 'registered' ), $columns );
}

Lời kết

Mình hi vọng bài viết này sẽ phần nào giúp bạn quản lý được người dùng trên trang hiệu quả hơn. Đặc biệt là với những bạn đang phát triển website liên quan đến việc phát triển cộng đồng.

Nếu các bạn thấy bài viết này giúp ích cho bạn, hãy bình luận và chia sẻ bài viết này. Ngoài ra, bạn có thể theo dõi chuyên mục Thủ thuật WordPress và follow Facebook để biết thêm nhiều kiến thức mới nha.

4 4 votes
Đánh giá bài viết
Quang Phúc:
Leave a Comment