ワードプレスので最後にユーザーがログインした時間やIPを記録するPHPコードをご紹介します。
ユーザーのログイン成功時に実行されるアクションwp_login
ワードプレスのログイン成功時に実行されるアクションwp_loginにフックすることでユーザーがログインした瞬間にその時間やIPを記録することができます。
function set_loginuser_meta($login) { $loginip = $_SERVER['REMOTE_ADDR']; $logintime = date_i18n('Y-m-d H:i:s'); update_usermeta( $user->ID, 'last_login_ip', $loginip); update_usermeta( $user->ID, 'last_login_time', $logintime); } wp_login, 'set_loginuser_meta');
このサンプルコードでは、$_SERVER[‘REMOTE_ADDR’]でユーザーのIP,date_i18n(‘Y-m-d H:i:s’)でワードプレスに設定されたタイムゾーンでの現在時間を取得し、update_usermetaでユーザーのメタデータにそれぞれを記録しています。
wp_loginアクションではログインに成功したユーザーの情報が渡されます。
$login->ID でユーザーID
$login->user_login でユーザーのログインID(半角英数)
$login->user_nicename ユーザー名
$login->user_email ユーザーのメールアドレス
$login->user_registered ユーザーの登録日
$login->display_name ユーザーの表示名
等の情報が取得できます。
記録されたユーザーのメタ情報を呼び出すには?
ユーザーのメタ情報を呼び出すには下記のようなコードで呼び出すことができます。
$user_id = 1; //ユーザーIDを指定します $loginip = get_user_meta($user_id, 'last_login_ip', true); $logintime = get_user_meta($user_id, 'last_login_time', true);
get_user_meta(ユーザーID, ‘メタキー’, 単一の結果を返すかどうか); という構文になります。
ご参考になりましたら幸いです。
WordPress
ワードプレスのPHPコーディング、カスタマイズ、機能の開発等のご依頼ご相談はWPドクターまでお気軽にお送りください