この記事は最後に更新してから1年以上経過しています。

Login rebuilder 2.8.0の変更内容を紹介

説明

先々週のアップデート」では、ダッシュボードの「ログインのログ」ウィジェット内に現在のユーザー(管理者のみ)のログイン状況を簡潔なメッセージで表示しましたが、一週間ほど使ってみると、もう少し詳しい情報が欲しくなりました。そんなわけで、ログイン中のユーザー情報を表示する新しいウィジェットを用意しました。

ログイン中のユーザー情報

前バージョン2.7.4では、メッセージの表示を以下のようなコードで判定しました。

$sessions = WP_Session_Tokens::get_instance( $profile_user->ID );
if ( count( $sessions->get_all() ) === 1 ) :

get_allメソッドは、メタキーが'session_tokens'のユーザーメタ情報を取得するもの。このユーザーメタ情報は、ユーザーがログインした際に追加され、ログアウトすると削除されるようになっており、メタキー'session_tokens'のユーザーメタ情報を持つユーザーがログイン中のユーザーとなります。このことをふまえて今回追加したのが「ログイン中のユーザー」ウィジェット。以下が管理者がログインした際のウィジェットの表示例です。

管理者のダッシュボードに追加された「ログイン中のユーザー」ウィジェットには現在ログインしているユーザーを一覧で表示

このウィジェットではユーザーエージェント情報をもとにOSとブラウザの種別を簡略化した内容で表示しています。主要なものには対応しましたが、意図した表示にならなかった場合は今後のアップデートで対応いたします。

またこの「ログイン中のユーザー」ウィジェットは1分間隔で内容を更新するようになっており、基本的になページ更新不要です(再ログイン後はページ更新が必要)。

複数の場所でログイン

この状態で別のブラウザを起動し、同じ管理者のアカウントでログイン。「ログイン中のユーザー」ウィジェットは次のように変わります。

「ログイン中のユーザー」ウィジェットでは2箇所以上でログインしているユーザーを赤字で表示

赤字のメッセージに変わり、ユーザーリストの対象ユーザーも赤字で表示されます。このようにすることで、複数の場所でのログインを検知しやすくなるのではないでしょうか。

管理者以外の「ログイン中のユーザー」ウィジェット

「ログイン中のユーザー」ウィジェットは、管理者の場合は自動で表示されますが、そのほかのユーザーに表示させる場合は設定ページで「すべてのユーザーに「ログイン中のユーザー」ウィジェットを表示する。」をチェックしてください。

「設定」「ログインページ」のページ下に「ログイン中のユーザー」ウィジェットを表示する。」をチェック

なお管理者以外の場合、ユーザーリストの内容は本人のアカウントのみとなります。

そのほかの変更点

「ログイン中のユーザー」ウィジェットの登場にあわせて「ログインのログ」ウィジェットの内容でもOSとブラウザを簡易表示するようになります(新しいログのみ)。また、「ログインのログ」ウィジェットの内容も1分間隔で更新されます。

最後に内部的な仕様の変更になりますが、ログインした際のログを記録するタイミング(処理するアクション)が変わりました。これはSNSなどのOAuthを利用したログインのログを記録するための対応となります。


最終更新 : 2022年07月20日 16:51

お勧め

add_shortcode(2018年5月27日 更新)

void add_shortcode( string $tag, mixed $func )
ショートコード(独自タグ)を追加する。ショートコードは、投稿記事内でテキスト内容がない[tag]や、テキストを内包する[tag]テキスト[/tag]の書式で使用できる独自タグのこと。標準の状態では、 the_content関数によって表示する直前のフィルター処理内でパラメータ$funcで指定した関数・メソッドが実行される。

get_user_setting(2022年1月31日 更新)

mixed get_user_setting( string $name [ , string $default = false ] )
ユーザーインターフェイス設定を取得する。

have_posts(2018年5月27日 更新)

bool have_posts( )
次の投稿データが存在するかを調べる。

in_category(2018年5月27日 更新)

bool in_category( mixed $category [ , mixed $post = null ] )
投稿情報が指定したカテゴリーに属しているか調べる。

add_feed(2024年6月24日 更新)

string add_feed( string $feedname, callable $callback )
フィードを追加する。