WordPressで最終ログイン日時を表示する方法

WP Last Login

WordPressで最終ログイン日時を表示する方法を紹介します。

WordPressを複数ユーザーで運営している場合や、購読者権限のユーザーを利用している場合に、ユーザーの最終ログイン日時を表示することができます。

最終ログイン日時を確認することで、ユーザーのサイト利用状況や、不正ログインの有無が分かります。

WP Last Loginを使って管理画面に最終ログイン日時を表示する方法

WP Last Login

WP Last Loginは、WordPressでユーザーの最終ログイン日時を表示することができるプラグインです。

プラグインをインストールして有効化すると、管理画面のユーザー一覧ページにLast Login(最終ログイン日時)の項目が追加されます。

最終ログイン日時

プラグインを有効化した時点から記録が開始されるので、一度ログアウトして、再度ログインすると最終ログイン日時が表示されます。

プラグインを使わずに記事にユーザーの最終ログイン日時を表示する方法

会員制サイトなどで、記事にユーザーの最終ログイン日時を表示したい場合は、以下のコードをfunctions.phpに記載します。

プラグインは使用しません。

<?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 );

/**
 * 最終ログイン日時を表示する関数
 *
 */
 
function wpb_lastlogin() { 
	$last_login = get_the_author_meta('last_login');
        $the_login_date = date('Y年n月j日 H:i', $last_login);
	return $the_login_date; 
} 

/**
 * 最終ログイン日時を表示する関数をショートコード[lastlogin]に登録する
 *
 */
 
add_shortcode('lastlogin','wpb_lastlogin');
?>

記事にショートコード[lastlogin]を記述すると、ユーザーの最終ログイン日時を表示することができます。

また、

$the_login_date = date('Y年n月j日 H:i', $last_login);

の部分を、以下のように変更すると、

$the_login_date = human_time_diff($last_login);

最終ログインからの経過時間を表示することができます。

参考

How to Show User’s Last Login Date in WordPress