Nếu các bạn muốn nắm giữ thông tin về thời gian đăng nhập cuối cùng của các thành viên (user) hoạt động trên website hay blog của các bạn, bạn có thể sử dung đoạn code mà mình chia sẻ trong bài viết này.

Với đoạn code này, các bạn chỉ việc copy và dán nó vào file functions.php có sẵn trong folder theme mà các bạn đang dùng:

Lưu thông tin

// set the last login date
add_action('wp_login','set_last_login', 0, 2);
function set_last_login($login, $user) {
    $user = get_user_by('login',$login);
    $time = current_time( 'timestamp' );
    $last_login = get_user_meta( $user->ID, '_last_login', 'true' );
    if(!$last_login){
    update_usermeta( $user->ID, '_last_login', $time );
    }else{
    update_usermeta( $user->ID, '_last_login_prev', $last_login );
    update_usermeta( $user->ID, '_last_login', $time );
    }
}
// get last login date
function get_last_login($user_id,$prev=null){
  $last_login = get_user_meta($user_id);
  $time = current_time( 'timestamp' );
  if(isset($last_login['_last_login_prev'][0]) && $prev){
          $last_login = get_user_meta($user_id, '_last_login_prev', 'true' );
  }else if(isset($last_login['_last_login'][0])){
          $last_login = get_user_meta($user_id, '_last_login', 'true' );
  }else{
    update_usermeta( $user_id, '_last_login', $time );
    $last_login = $last_login['_last_login'][0];
  }
  return $last_login;
}

Hiển thị

Để hiển thị thông tin này, các bạn chỉ việc copy đoạn code bên dưới vào vị trí mà các bạn muốn hiển thị.

// show last login date
 global $current_user;
 get_currentuserinfo();
 echo 'Previous: Login date: ' . date("Y-m-d h:m:s", get_last_login($current_user->ID,true)) . '';
 echo 'Current: Login date: ' . date("Y-m-d h:m:s", get_last_login($current_user->ID)) . '';

Ngoài ra ,các bạn còn có thể so sánh thời gian đăng nhập lần cuối với thời gian hiện tại để lấy ra số ngày đã không online.

// how many days since last login
  global $current_user;
  get_currentuserinfo();
  $now = time();
  $last_login = get_last_login($current_user->ID,true);
  $datediff = $now - $last_login;
  echo 'Days since last login: ' . floor($datediff/(60*60*24)) . ' ';

Chúc các bạn thành công!

Recent posts

Hàng siêu cao cấp, iPhone gập sẽ có giá cao ngất ngưởng

Hàng siêu cao cấp, iPhone gập sẽ có giá cao ngất ngưởng

iPhone Fold – chiếc iPhone gập được đồn đại từ lâu của Apple – có thể sẽ là một sản […]

Người dùng iPhone cần cập nhật ngay iOS 18.4.1 vì lý do bảo mật nghiêm trọng

Người dùng iPhone cần cập nhật ngay iOS 18.4.1 vì lý do bảo mật nghiêm trọng

Apple cho biết các lỗ hổng bảo mật này có khả năng đã được sử dụng trong một cuộc tấn […]

[Thủ thuật] Xóa menu “WordPress” khỏi thanh quản trị

[Thủ thuật] Xóa menu “WordPress” khỏi thanh quản trị

Bạn muốn xóa menu “WordPress” (thường có biểu tượng chữ W) khỏi thanh quản trị (wp-admin bar) và các mục […]

POCO M7 Pro mẫu smartphone 5G giá siêu rẻ của Xiaomi

POCO M7 Pro mẫu smartphone 5G giá siêu rẻ của Xiaomi

POCO M7 Pro là mẫu smartphone 5G giá siêu rẻ của Xiaomi, chỉ hơn 4 triệu đồng nhưng vẫn được […]

Hóa ra “đường link màu tím” trên Chrome không chỉ là tính năng, nó còn là lỗ hổng bảo mật 16 năm tuổi

Hóa ra “đường link màu tím” trên Chrome không chỉ là tính năng, nó còn là lỗ hổng bảo mật 16 năm tuổi

Chỉ mới đây thôi, Google phát hành bản vá cho một lỗ hổng nghiêm trọng trong trình duyệt Chrome đã […]

© 2021 Tạp Chí CNTT. Mr Hoang