ユーザーの最終ログイン日を記録する方法をご紹介いたします。また、記録した最終ログイン日をユーザー一覧に出力する方法も併せて解説いたします。
WordPressで各ユーザーの最終ログイン日を記録する方法
ユーザーの最終ログイン日を記録するには、下記を適用しているテーマのfunctions.phpに追加します。
function user_last_login( $user_login, $user ) { update_user_meta( $user->ID, 'last_login', time() ); } add_action( 'wp_login', 'user_last_login', 10, 2 );
ユーザーがログインしたタイミングで、”last_login”というメタ情報としてログイン日時が記録されるようになります。
記録した最終ログイン日をユーザー一覧で出力するには、下記コードもfunctions.phpに追加します。
function add_users_columns( $columns ) { $columns['columns_lastlogin'] = '最終ログイン'; return $columns; } function add_users_custom_column( $column_name, $column, $user_id ) { if ( $column == 'columns_lastlogin' ) { $user_info = get_userdata($user_id); $user_lastlogin_time = $user_info->last_login; return date('Y/m/d',intval($user_lastlogin_time)); } } add_filter( 'manage_users_columns', 'add_users_columns' ); add_filter( 'manage_users_custom_column', 'add_users_custom_column', 10, 3 );
管理画面でユーザー一覧にアクセスすると、以下のように最終ログイン日の列が追加されます。
あとがき
最終ログイン日が分かれば、そのユーザーがアクティブかどうかを把握することができますね。
会員制サイトなどで、各ユーザーの最終ログイン日を記録しておきたい場合は、ぜひ参考にしていただければと思います。