更新日期:2022-03-07

後台所有使用者的管理列表只有幾個欄位而已,如果想要增加『最後登入時間』欄位,就必須額外再新增到資料庫中。

以下程式碼請自行加在正在使用佈景的 functions.php 中,或是加在一些可自行增加程式碼的外掛中也可以。

Step.1 紀錄登入時間

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

Step.2 自訂欄位名稱

function add_users_login_column( $column ) {
    $column['last_login'] = '最後登入時間';
    return $column;
}
add_filter( 'manage_users_columns', 'add_users_login_column' );

Step.3 填入登入時間到欄位中

function add_login_column_value( $val, $column_name, $user_id ) {
    switch($column_name) {

        case 'last_login' :
            $the_login_date = get_user_meta($user_id, 'last_login', true);
            return  human_time_diff($the_login_date);
            break;

           default:
    }
}
add_filter( 'manage_users_custom_column', 'add_login_column_value', 10, 3 );