最も必要とされている時に、信頼できるWordPressチュートリアルを。
WordPress入門ガイド
WPBカップ
2500万人以上
当社のプラグインを使用しているウェブサイト
16+
WordPress経験年数
3000+
専門家によるWordPressチュートリアル

WordPressでユーザーログインを1台のデバイスに制限する方法

人々はよく友人とNetflixのログイン情報を共有します。パスワード共有が手に負えなくなるのを防ぐために、オンラインサービスは現在、一度に1つのアカウントを使用できるデバイスの数を制限し始めています。

私たちの読者の多くはメンバーシップウェブサイトを運営しており、オンラインコースを提供しています。彼らは、ログイン情報の共有がビジネスの収入源の損失につながるため、ログイン情報の共有についても同様に懸念していると述べています。そのため、同様のログイン制限を設定したいと考えています。

この記事では、WordPressウェブサイトで各ユーザーのログインを1つのデバイスにのみ制限する方法を説明します。この記事の終わりまでには、コンテンツを保護し、支払い済みのメンバーのみがアクセスできるようにする方法がわかり、オンラインビジネスを公正かつ収益性の高いものに保つのに役立ちます。

WordPressでユーザーログインを1台のデバイスに制限する方法

WordPress でユーザーログインを 1 台のデバイスに制限する理由

ストリーミングサービスは、ユーザーがログイン認証情報を共有するという課題に直面しています。2023年、Netflixは世界中で約1億世帯がパスワードを共有していると報告しました。これは膨大な数です!

多くのWordPressサイト、特にメンバーシップサイトやeラーニングサイトでは、同じ問題が発生します。デフォルトでは、WordPressユーザーは無制限のデバイスやブラウザから同時にログインできます。

この慣行はユーザーには無害に見えますが、ウェブサイトの収益とユーザーエクスペリエンスに大きな影響を与える可能性があります。たとえば、次のようになります。

  • 会員制サイトは、支払う人に特別なコンテンツを提供します。ユーザーがログイン情報を共有すると、メンバーシップを購入する人が少なくなります。これは、サイト所有者にとって収入が減ることを意味します。
  • 学生がオンライン学習のログイン情報を共有すると、他のユーザーはコースを購入する必要がなくなります。さらに、個別のアドバイスを提供したり、誰がコースを完了したかを知ったりすることが困難になります。

ユーザーのログインを1つのデバイスに制限すると、実際のユーザー数を把握し、収益を増やし、コンテンツやサービスの価値を維持することができます。さらに、すべての有料ユーザーに公平な体験を提供し、ウェブサイトをより安全に保つことができます。

ログインを制限するのは、ユーザーを信頼していないからではありません。ウェブサイトを公平に保ち、継続的に稼働できるようにするためです。これは、ウェブサイトの所有者と正直なユーザーの両方に役立ちます。

WordPressでユーザーログインを1台のデバイスに制限する(簡単)

最初に行う必要があるのは、無料のLoggedin – Limit Active Loginsプラグインをインストールして有効化することです。WordPressプラグインのインストール方法に関するガイドで、ステップバイステップのヘルプを見つけることができます。

有効化すると、プラグインは自動的に機能し始め、各ユーザーを3つのアクティブなログインに制限します。

設定によっては、この制限に達すると、ユーザーは新しいデバイスでログインできなくなる場合があります。その場合は、他のデバイスのいずれかからログアウトするまで待つ必要があります。詳細は以下をご覧ください。

このユーザーのログイン制限に達しました

注意: WordPressにログインした後、ユーザーは通常、Webブラウザを閉じてもログインしたままになります。画面右上にある「Howdy」メニューを使用して、手動でログアウトする必要があります。

プラグインを設定するには、WordPressダッシュボードの設定 » 一般にアクセスし、「ログイン設定」セクションまでスクロールダウンしてください。

ここで、「最大アクティブログイン数」フィールドの数値を変更することで、異なるログイン数を許可できます。

Loggedinプラグインの設定

「ログインロジック」設定は、ユーザーがアクティブなログイン数の上限に達した場合に何が起こるかを決定します。

  • 許可:新しいデバイスでログインできますが、他のすべてのデバイスからは自動的にログアウトされます。
  • ブロック: 他のログインセッションが期限切れになるまで、新しいデバイスでログインできません。

したがって、ユーザーログインを1つのデバイスにのみ制限したい場合は、「最大アクティブログイン数」を1に、「ログインロジック」をブロックに設定する必要があります。

または、一度に1つのデバイスにのみログインしている限り、どのデバイスを使用しても構わない場合は、「最大アクティブログイン」を1に、「ログインロジック」を許可に設定する必要があります。

設定を保存するには、「変更を保存」ボタンをクリックすることを忘れないでください。

このプラグインを使用すると、単一のユーザーをすべてのデバイスから強制ログアウトすることもできます。ユーザーIDを入力して、「強制ログアウト」ボタンをクリックするだけです。

WordPressで投稿、カテゴリ、タグ、コメント、またはユーザーIDを見つける方法に関するガイドで、ユーザーIDの見つけ方を学ぶことができます。

特定のユーザーまたはロールのログイン制限をバイパスする(上級者向け)

特定のユーザーまたはユーザーロールに対して、これらのログイン制限をバイパスすることができます。

例えば、サイトの管理者やエディターが誤ってロックアウトされないようにしたい場合があります。または、複数の場所で異なるコンピューターで作業する重要なチームメンバーがいる場合もあります。

ただし、これを行うには、WordPressテーマのfunctions.phpファイルにカスタムコードスニペットを追加する必要があります。わずかな間違いでもWordPressサイトが破損してアクセスできなくなる可能性があるため、WordPressにカスタムコードを簡単に追加する方法に関するガイドを確認することをお勧めします。

コードスニペットを追加する最も安全な方法であり、functions.phpファイルを直接編集する必要がないため、WPCodeの使用をお勧めします。

特定のユーザーのログイン制限をバイパスする

WPCodeの無料バージョンをインストールして有効化し、WordPressダッシュボードの「コードスニペット」>「+スニペットを追加」に移動するだけです。

次に、「カスタムコードを追加(新規スニペット)」のエントリにマウスカーソルを合わせ、表示される「スニペットを使用」ボタンをクリックします。

WPCode で新しいスニペットを追加する

画面下部にポップアップが表示され、スニペットのコードタイプを選択するように求められます。

「PHPスニペット」オプションをクリックする必要があります。

WPCodeでPHPスニペットオプションを選択

これによりカスタムスニペット作成ページが開かれ、必要なコードを追加できます。スニペットのタイトルとして、「特定のユーザーのログイン制限をバイパスする」などを追加することから始めることができます。

その後、以下のコードスニペットをコピーして、「コードプレビュー」ペインに貼り付けます。

function loggedin_bypass_users( $bypass, $user_id ) {

    // Enter the user IDs to bypass.
    $allowed_users = array( 1, 2, 3, 4, 5 );

    return in_array( $user_id, $allowed_users );
}

add_filter( 'loggedin_bypass', 'loggedin_bypass_users', 10, 2 );

次に、$allowed_users = array で始まる行を見てください。制限を回避したい特定のユーザーのユーザーIDで、「1, 2, 3, 4, 5」を置き換える必要があります。ユーザーIDはいくつでも追加でき、カンマで区切る必要があります。

WordPressで投稿、カテゴリ、タグ、コメント、またはユーザーIDを見つける方法に関するガイドで、ユーザーIDの見つけ方を学ぶことができます。

最後に、スニペットを「アクティブ」に切り替え、「スニペットを保存」ボタンをクリックして設定を保存する必要があります。

特定のユーザーがログイン制限をバイパスするコードスニペット

特定のロールに対するログイン制限のバイパス

特定のロールに対するログイン制限をバイパスするコードスニペットを追加するには、同じ手順に従うことができます。

新しいコードスニペットを「特定のロールのログイン制限をバイパスする」という名前で作成し、次のコードスニペットを「コードプレビュー」ペインに貼り付けるだけです。

function loggedin_bypass_roles( $prevent, $user_id ) {

    // Array of roles to bypass.
    $allowed_roles = array( 'administrator', 'editor' );

    $user = get_user_by( 'id', $user_id );

    $roles = ! empty( $user->roles ) ? $user->roles : array();

    return ! empty( array_intersect( $roles, $allowed_roles ) );
}

add_filter( 'loggedin_bypass', 'loggedin_bypass_roles', 10, 2 );

このスニペットは、「administrator」および「editor」ロールの制限をバイパスします。「author」などの他のロールも、単一引用符で囲み、カンマで区切って追加できます。

完了したら、スニペットを「アクティブ」に切り替え、「スニペットを保存」ボタンをクリックしてください。

特定のロールがログイン制限をバイパスするためのコードスニペット

このチュートリアルで、WordPressでユーザーログインを1つのデバイスに制限する方法を学べたことを願っています。また、WordPress会員サイトの作成に関する究極のガイドや、おすすめのWordPress LMSプラグインもご覧ください。

この記事が気に入った場合は、WordPressのビデオチュートリアルのために、YouTubeチャンネルを購読してください。また、TwitterFacebookでも私たちを見つけることができます。

開示: 当社のコンテンツは読者によってサポートされています。これは、一部のリンクをクリックすると、手数料が発生する可能性があることを意味します。WPBeginnerがどのように資金調達されているか、なぜそれが重要なのか、そしてどのように私たちをサポートできるかを確認してください。こちらが当社の編集プロセスです。

究極のWordPressツールキット

無料のツールキットにアクセスしましょう - すべてのプロフェッショナルが持つべきWordPress関連の製品とリソースのコレクションです!

読者とのインタラクション

4 CommentsLeave a Reply

  1. 「特定のロールに対するログイン制限のバイパス」セクションのサンプルコードにエラーがあることを指摘しておきます。return行は次のようになっています。

    ! empty( array_intersect( $roles, $whitelist )

    ここでの変数 $whitelist は、$allowed_roles であるべきです。これはコードの早い段階で宣言されています。この変更なしにコピー&ペーストすると、ログイン時にサイトエラーが発生します。

    • それに気づいていただきありがとうございます。正しいコードで記事を更新します!

      管理者

  2. これは、メンバーシップベースのウェブサイトにとって非常に必要とされている機能です。
    多くのNetflixサブスクリプションが認証情報を他者と共有し、同時にデータを消費しているのを見てきました。
    しかし最近、この技術を使用して、一度に1つのデバイスのみログインを許可し、他のすべてのユーザーをログアウトさせるようになりました。
    これは、ビジネスを成長させるための最良の方法であり、特にコースウェブサイトでは、学生のパフォーマンスを追跡し、学習体験を向上させるのに役立ちます。
    ログイン中のユーザーのデバイスを制限するためのこの詳細なガイドをありがとうございます。

  3. 私はMemberPressとメンバーシップサイトを持っています。これは本当に良い機能で、誰かがメンバーシップを他人に共有して悪用する可能性があるとは思いもよりませんでした。対処する価値は間違いなくありますので、まずは簡単なオプションを試してみます。迅速かつ簡単そうです。デバイス数を調整できるのも素晴らしいです。それは本当に良いことです。この便利なヒントに感謝します。これは間違いなく役に立つでしょう。

Leave A Reply

コメントいただきありがとうございます。すべてのコメントは、コメントポリシーに従ってモデレーションされ、メールアドレスは公開されません。名前フィールドにキーワードを使用しないでください。個人的で意味のある会話をしましょう。