WordPressを使って複数のユーザーで運営するサイトで困るのが「ブラウザを閉じない(セッションが終了しない)限り、ログインした状態が継続されること」と「複数の場所から同じアカウントへ同時ログインできてしまう」こと。
これを防止するための有名なプラグインに
などがありますが、今回紹介する【Inactive Logout】はこの2つを統合したようなプラグイン。自動ログアウトする前にはポップアップで通知してカウントダウンしてくれるので、作業中のユーザーが知らない間に・・・ということを多少軽減できるようになっています。
※余計なリビジョン(編集履歴)を作りたくないなどの理由で投稿の自動保存を停止しているサイトではこのプラグインを使って自動ログアウトさせると作業中のデータが破棄されますので注意が必要かと思います。
機能は以下の通りです。
【Inactive Logout】プラグインの基本的な機能・できること
- 設定した時間に何も作業していないユーザーを自動でログアウトさせる
- ログアウト後はログイン画面へ移動するほか、任意のページへリダイレクトさせる
- ユーザー権限に応じてログアウト時間などの細かい設定ができる
- ログアウト前にカウントダウン表示
- ログアウトさせずに警告表示だけを出すことも可能
- 複数の場所からのログインをできないようにする
本記事を参考にWordPressサイトへプラグインの導入を検討される方へ
WordPressは古くから無料で配布されているサイト作成ツール(CMS)で、随時改良が加えられており、さまざまなバージョンが存在します。
さらにWordPressを動かすためのプログラムであるPHP、サイトのデータを保存しておくためのデータベースについても様々なバージョンがあります。
そしてWordPress本体同様にプラグインについてもさまざまなバージョンが存在します。
本記事を参考にプラグインの導入をお考えの方は、以下に留意の上でインストールするようにしてください。
- テスト環境での動作に基づいた紹介記事ですので、すべての環境で正常に動作するかどうかは不明です
※本記事の内容についてはページ内に記載しているプラグインバージョンのものになります。現在のバージョンと異なる場合、機能や日本語対応の状況などが異なる場合があります。
※また、テスト環境、テストしたプラグインバージョン等の表示が本文内にない場合、ページタイトル下にある最終更新日当時の情報となりますので、現在のバージョンでは全く違う機能となっているかも知れません。 - プラグインに無料版と有料版(Pro版)がある場合、特に記載がなければ無料版の情報のみを紹介しています
- このページでプラグインを使用する際に必要なショートコードやコードなどは、コピーして使用することができますが、環境によっては記号などが文字化けすることがあります。コピーしたのに動作しない場合は特に「”」「’」などの記号を入力し直してみてください。
- プラグイン本体の動作不具合や質問などは公式サイトのフォーラムなどで行ってください(ここでは質問にお答えすることはできません)
【Inactive Logout】プラグインの設定画面や表示の日本語化と翻訳
当サイトで私が翻訳した【Inactive Logout】プラグインの日本語化ファイルを提供しています。
翻訳ファイルは
からダウンロードできます(ダウンロードの方法や日本語の適用方法なども解説しています)
翻訳することで設定が容易になり、重要な項目の設定漏れも少なくなりますから日本語化をお勧めします。
【Inactive Logout】プラグインのインストールと設定
インストール方法
インストールはプラグインの新規追加でプラグイン名を入力して検索してインストールするか、WordPressのプラグイン公式配布ページからダウンロード後、管理画面からアップロードインストールしてください(プラグインの公式ページは本ページ内記載のリンクをクリック、もしくは、WordPress公式サイトで検索してください)。
WordPressを使い始めて間もない方(初心者の方)は、より詳細なプラグインのインストール手順や、インストール時に起こる問題などへの対処方法をまとめた【WordPress】プラグインのインストール&追加方法とエラー対処の方法も併せてご覧ください。
【Inactive Logout】プラグインの基本的な使い方
項目をクリックすると不随する設定やメッセージ変更用の窓が表示されるので、英語が分からないと設定もれが出るかもしれません。
英語の設定画面はこんな感じです
動作としては
1.設定した時間に何も操作がないと警告をポップアップ表示
2.警告から10秒経過すると自動でログアウト(ログアウトした旨を表示)
という感じになります。
※初期設定では権限に関わらずフロントエンド・バックエンドとも動作しますから詳細設定で【管理者権限】のユーザーは除外するといいでしょう
※リダイレクト先を設定しないとログアウト後にログイン画面へ移動するようになっていますが、ブラウザのオートコンプリート機能が有効になっていたりするとユーザー名・パスワードが入力された状態になってしまうためセキュリティ上良くはないと思いますから、リダイレクト先ページを別に用意するか、トップページなどに移動するように設定するといいと思います。
メッセージ表示のカスタマイズ方法
このプラグインには「ログアウト後のリダイレクト中メッセージ」と「ログアウト後のポップアップ画面に表示されるメッセージ」の設定変更項目がありません。
通常動作では「このままだとログアウトしちゃいますよ~」でカウントダウンが始まり、時間が経過すると
- 「ログアウトしちゃいましたよ~」という画面に移動
- そこでボタンをクリックするとログイン画面に移動
- しばらく放置していると「リダイレクトしてまっせ!」という表示が出た後にログイン画面がポップアップ表示
されるようになっています。
この動作で表示される2と3のメッセージが変更できないので英語になってしまいます。これでは具合が悪い・・ということで公式ページで紹介されているフック(テーマのfunctions.phpへ追記する)を紹介しておきます。
下のコードを有効になっているテーマのfunctions.phpへコピーしてください
//For changing message "ログアウト後にリダイレクトさせている間のメッセージ"
add_filter('ina__redirect_message', 'your_theme_function' );
function your_theme_function($msg) {
$msg = "リダイレクトしちゃってます";
return $msg;
}
//For changing message "ログアウトされた後ポップアップ表示されるメッセージ"
add_filter('ina__logout_message', 'your_theme_functionb' );
function your_theme_functionb($msg) {
$msg = "ログアウトしちゃいました";
return $msg;
}
そして「リダイレクトしちゃってます」と「ログアウトしちゃいました」の2つをお好みの文言に変更すれば、きちんと意図した言葉でポップアップ表示されるようになります。
プラグインのテスト環境&個人的評価
最後に【Inactive Logout】を動作確認した際の環境と個人的な評価を書いておきます。導入の検討や参考になれば幸いです。
テストした環境
- テストサーバー:ドメインキング
- WordPressのバージョン:4.9.6
- PHPのバージョン:7.0
- テーマ:Simplicity2 バージョン2.3.0g
- プラグインのバージョン:本記事で紹介しているバージョン 1.7.8/最新バージョン 3.4.3
- 公式サイト(wordpress.org上):https://wordpress.org/plugins/inactive-logout/
- 公式サイト(作者サイト):
個人的な評価・感想ほか
- 設定のしやすさ:★★★★★
- 使いやすさ:★★★★★
- おすすめ度:★★★★★