管理者を除くすべてのユーザーに対してWordPress管理バーを無効にする方法

一部の読者から、WordPressの管理バーを無効にする方法について質問がありました。これは小さな調整ですが、クリーンなユーザーインターフェースを維持したり、管理者以外のユーザーのユーザーエクスペリエンスを向上させたりするなど、さまざまな理由でこれを好むユーザーもいます。

デフォルトでは、WordPressの管理バーを個々のユーザーに対して簡単に無効にすることができます。しかし、サイトに多数の登録ユーザーがいる場合、これは時間がかかる可能性があります。

この記事では、管理者以外のすべてのユーザーに対してWordPressの管理バーを簡単に無効にする方法を紹介します。

管理者以外の全ユーザーのWordPress管理バーを無効にする方法

WordPressの管理バーとは?

デフォルトでは、WordPressはログインしているすべてのユーザーに対して画面上部に管理バーを表示します。アカウントにログインすると、WordPress管理エリアおよびその他のすべてのページでこのツールバーが表示されます。

WordPressの管理バー

WordPress管理ツールバーには、WordPressのさまざまなバックエンドエリアへの便利なショートカットがあり、これらのショートカットはWordPressでのユーザーの役割と権限に基づいて変化します。

しかし、ウェブサイトのフロントエンドを見ているとき、管理者バーは気が散る原因になることがあります。

ウェブサイトのデザインやユーザーエクスペリエンスにも影響を与える可能性があります。これは、第三者のためにWordPressサイトを構築または管理している場合、彼らが自分のウェブサイトが実際にどのように見えるかを確認できないため、問題となる可能性があります。

幸いなことに、管理者以外の全ユーザーの管理バーを無効にする方法は複数あります。使用したい方法にジャンプするには、以下のクイックリンクを使用してください。

動画チュートリアル

WPBeginnerを購読する

書き込みによる説明をご希望の場合は、このままお読みください。

方法1:WordPressで各ユーザーの権限を変更する

特定のユーザーに対して管理バーを無効にするには、ユーザープロフィールの編集だけで済みます。少数のユーザーに対してのみバーを削除したい場合に、迅速かつ簡単な方法です。しかし、多くのユーザーを抱える会員サイトを運営している場合は、別の方法を選択することをお勧めします。

管理バーを手動で削除するには、WordPress管理ダッシュボードのユーザー » 全ユーザーページに移動します。次に、管理バーを必要としないWordPressユーザーの上にマウスカーソルを合わせ、「編集」が表示されたらクリックします。

WordPressでユーザープロフィールを編集する方法

これにより、そのユーザーのプロフィールが開きます。

ここから、「サイト表示時にツールバーを表示する」オプションの横にあるチェックボックスをオフにします。

管理者以外のユーザーに管理者ツールバーを非表示にする方法

その後、画面の下部までスクロールし、「ユーザーを更新」をクリックして変更を保存します。これにより、その特定のユーザーのみ管理バーが無効になります。

より多くのユーザーのツールバーを非表示にするには、上記と同じ手順に従ってください。

方法2:コードを使用して非管理者ユーザーの管理バーを無効にする(推奨)

多くの異なるユーザーに対して管理者バーを非表示にする必要がある場合、各ユーザーの設定を手動で変更するのは時間と労力がかかります。

そのため、WordPressのテーマファイルであるfunctions.phpファイルにコードを追加して管理バーを無効にすることをお勧めします。

テーマファイルを直接編集するように指示するガイドもありますが、これは一般的なWordPressのエラーを引き起こしたり、ウェブサイトを完全に破損させたりする可能性があります。

そのため、WPCodeの使用をお勧めします。これは最高のコードスニペットプラグインであり、サイトを危険にさらすことなくWordPressにカスタムコードを簡単に追加できます。

WPCodeを使用して、管理画面の配色を変更したり、「Howdy Admin」テキストを削除したり、Screen Optionsボタンを無効にしたりしました。

まず、無料のWPCodeプラグインをインストールして有効化する必要があります。 詳細については、WordPressプラグインのインストール方法に関するステップバイステップガイドを参照してください。

プラグインをアクティブ化したら、Code Snippets » Add Snippetに移動します。

WPCodeで管理バーを非表示にする

ここでは、サイトに追加できる既製のスニペットがすべて表示されます。

実際、WPCodeには、組み込みのスニペットライブラリに必要な管理バーを無効にするための正確なコードスニペットがあります。単にCode Snippets » Libraryに移動してください。

WordPress用WPCodeコードスニペットプラグイン

ここで、「Disable The WP Admin Bar」を検索してください。

正しいスニペットが表示されたら、その「スニペットを使用」ボタンをクリックするだけです。

すぐに使えるDisable The WP Admin Bar コードスニペット

このプラグインは自動的にコードをサイトに追加し、コードにわかりやすいタイトルを付け、正しい挿入方法を選択し、スニペットを識別するのに役立つタグさえ追加します。

コードは以下のようになります。

/* Disable WordPress Admin Bar for all users */
add_filter( 'show_admin_bar', '__return_false' );

さて、すべてのユーザーの管理バーを無効にすることが目的であれば、スイッチを「非アクティブ」から「アクティブ」に切り替え、「更新」をクリックするだけで済みます。

WordPressにカスタムコードを追加する

ただし、管理ユーザー以外のユーザーに対してWordPressの管理バーを無効にすることが目標なので、コードにいくつかの小さな調整を加える必要があります。

次のコードで既存のコードを置き換えることができます:

/* Disable WordPress Admin Bar for all users except administrators */
add_filter( 'show_admin_bar', 'restrict_admin_bar' );

function restrict_admin_bar( $show ) {
    return current_user_can( 'administrator' ) ? true : false;
}

このコードは、現在管理ダッシュボードを見ていない管理者以外のユーザーを識別します。これらのユーザーに対して、WordPressの管理バーを無効にします。

その後、ページを下にスクロールして「挿入」セクションに移動します。ここでは、デフォルトの「自動挿入」メソッドを維持して、コードがどこでも実行されるようにすることができます。

WordPressウェブサイトにコードを自動的に挿入する

最後に、画面の上部までスクロールし、「非アクティブ」スライダーをクリックして「アクティブ」と表示させます。

次に、「スニペットを保存」または「更新」ボタンをクリックするだけで、コードスニペットが公開されます。

管理者以外のユーザーに対してWordPressの管理バーを無効にするコードスニペットを公開する

それだけです!すべてが正常に機能していることを確認するために、WordPressウェブサイトをチェックすることを忘れないでください。

方法3:無料プラグインを使用して非管理者ユーザーの管理バーを無効にする

コードをウェブサイトに追加したくない場合は、プラグインを使用して管理バーを非表示にすることができます。Hide Admin Bar Based on User Roles は、さまざまなユーザーロールに基づいてツールバーを削除できるため、すべてのメンバー、WooCommerce の顧客、またはその他のユーザーロールに対してバーを無効にしたい場合に適しています。

まず、Hide Admin Bar Based on User Roles プラグインをインストールして有効化する必要があります。詳細については、WordPressプラグインのインストール方法に関するステップバイステップガイドをご覧ください。

有効化したら、設定 » 管理バーを非表示設定 ページに移動する必要があります。ここで、管理バーを無効にしたいユーザーロールの横にあるチェックボックスをオンにします。

特定のユーザーロールの管理ツールバーを非表示にする

これが完了したら、「変更を保存」をクリックして設定を保存します。

この記事が、管理者以外のすべてのユーザーに対してWordPressの管理バーを無効にする方法を学ぶのに役立ったことを願っています。また、WordPressで投稿変更のメール通知を受け取る方法に関するガイドや、おすすめのWordPressアクティビティログ&トラッキングプラグインもご覧ください。

この記事が気に入ったら、WordPressのビデオチュートリアルについては、YouTubeチャンネルを購読してください。 TwitterFacebookでもフォローできます。

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

究極のWordPressツールキット

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

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

168 CommentsLeave a Reply

  1. after_setup_theme フックは常に機能するとは限りません。代わりにこちらをお試しください。

    function remove_admin_bar( $value ) { return ( current_user_can( ‘administrator’ ) ) ? $value : false; } add_filter( ‘show_admin_bar’ , ‘remove_admin_bar’);

  2. 4つの異なる方法を提供していただきありがとうございます。完璧です。

  3. 管理バーを表示するためにエディターと管理者を加えたい場合、コードはどうなりますか?

    if (!current_user_can(‘administrator’) && !is_admin())…

    if (!current_user_can(‘editor’) && !is_editor())…

    if (!current_user_can(‘administrator’) && !is_admin() || !current_user_can(‘editor’) && !is_editor())

    これは機能しますか?

    • あなたが望むものについては、以下を削除する必要があります: && !is_editor()

      そうすれば、意図したとおりに機能するはずです。

      管理者

  4. こんにちは。
    おすすめのプラグインで管理バーを非表示にしましたが、購読者がログインすると、「プロフィールを表示」をクリックしてWPダッシュボードを見ることができます。それを無効にすることはできますか?

    • 変更が反映されない最も一般的な理由として、キャッシュのクリアを試してみると良いでしょう。

      管理者

  5. これは具体的に何を無効にするのですか? サブスクライバーアカウントでログインしているときに example.com/wp-admin にアクセスすると、管理バーが表示され、メニューオプションにアクセスできます。

    • 管理バーが非表示にならない最も可能性の高い原因として、コードが正しく追加されていることを確認したいでしょう。そうでなければ、このコードを上書きしているプラグインがある可能性もあります。

      管理者

  6. どうもありがとうございます。しかし、ユーザーがログアウトしたい場合はどうすればよいですか?

  7. 管理コードをテーマに追加できません。

    サイトとの通信がエラーチェックできませんでした。PHP調整は元に戻されました。PHPファイルの変更は、SFTPなどを使用して別の方法で変更する必要があります。

  8. コードはどこに挿入すればよいですか?先頭ですか?functions.phpの末尾ですか?よろしくお願いします。

    • 後で見つけやすく、必要に応じて削除しやすいように、通常は末尾に推奨します。

      管理者

  9. Hello there…!
    First of all i simply love the work wpbeginner, as you always bring forward the simplest solutions to our wordpress issues. Your website and Youtube channel has always been helpful for me. Thumbs Up for that.. :)

    購読者のみに管理バーを非表示にする問題がありました。あなたのコードをfunctions.phpに適用した後、それは私の編集者にも非表示になりました。
    私の編集者も管理バーを見ることができるようにする方法はありますか?購読者からのみ非表示にする必要があります..!

    • そのためには、ターゲットとしているものとは異なる、エディターが持つ権限をターゲットにする必要があります。例えば、edit_others_posts などです。

      管理者

  10. 素晴らしい助けになりました、魔法のようにうまくいきました!
    本当にありがとうございました。

  11. 私のウェブサイトでは次のように表示されます:

    fatal error をチェックするためにサイトと通信できませんでした。そのため、PHP の変更は元に戻されました。SFTP などの別の方法で PHP ファイルの変更をアップロードする必要があります。

    今どうすればいいですか?

  12. まほうのようにうまくいきます、あなたのコードは完璧ですが、ファイルマネージャーで直接変更する必要があります。

    ありがとう。

  13. このコードを変更して、WordPress管理バーを管理者とモデレーターには表示し、それ以外の全員には非表示にすることはできますか?

    ありがとうございます!

  14. WordPress の URL 構造を知っているユーザーは、簡単に /wp-admin/ にアクセスでき、そこで管理ツールバーが表示されます。また、ユーザー数が少ない場合は、ユーザー設定で非アクティブ化するのが最も簡単な方法です。

  15. 機能しません。まあ、公平に言えば、最初に使うときは機能しますが、その後何かがあって機能しなくなります。functions.php を上書きしているものは何もありませんし、コードはそこにありますが、通常は最初のログイン、ログアウトのサイクル後に再度ログインすると、管理バーが戻ってきます。

  16. いくつかのプラグインを使用してソーシャルメディアサイトを作成しましたが、一つの問題を除いてすべてうまくいっています。ログインしていないユーザーに対して、ページは正常に制限されリダイレクトされます(Buddypressページ、ブログなど)。

    しかし、私が抱えている主な問題は、ログインしていないユーザーでも、サイドバーやフッターに配置されたウィジェットを通じてブログ投稿やユーザープロフィールページにアクセスできることで、どこにも解決策が見つからないことです。

    この件について、子テーマに挿入できるプラグインやコードのアイデアはありますか?

    1日以上解決策を探していましたが、ページやコンテンツの一部を制限する方法しか見つかりませんでした。しかし、ウィジェットリンクには何も機能せず、設定されている制限を通過し続けています。

    ありがとう

    • こんにちは Cesar、

      ログインしていないユーザーからウィジェットを非表示にできるウィジェットやプラグインはいくつかあります。ただし、ログインしていないユーザーがURLを知っていれば、それらのURLに直接アクセスできる可能性があります。プラグインの設定を確認し、ログインしていないユーザーからプロフィールページを非表示にするオプションを見つけられるかどうかを確認する必要があります。

      管理者

  17. This code or several others that I tried from the comments isn’t working. I’m trying to remove that dumb silver/black wordpress tab above my menu that shows up for all of my website’s users. How do I remove that? Please help :)

    • 記事で述べられているように、管理バーなしでフロントエンドからユーザーがプロフィールを編集する方法を含めました。どのようにそれを達成しましたか。
      ありがとうございます

  18. こんにちは、問題があります。すべてを行いましたが、フロントエンドでオーナーユーザーのツールバーを非表示にできません。ただし、管理者ユーザーの場合は非表示にできます。信じられません。
    検索&ゴーテーマのWordPressを使用しています。ご協力ありがとうございます。

  19. Hello,

    コードの更新が必要です。ロールごとにリダイレクトするには、このコードを使用します。

    /*特定のロールに対して管理バーを非表示にする*/
    function hide_admin_bar() {
    if(is_user_logged_in() ) {
    $current_user = wp_get_current_user();
    if ( in_array( ‘subscriber’, (array) $current_user->roles ) ) {
    add_filter(‘show_admin_bar’, ‘__return_false’);
    }
    }
    }

    お役に立てば幸いです。

    • この更新されたコードをありがとうございます、アレックス。シンプルで素晴らしい動作をします。

      Put it in child theme functions.php and forget about it. :)

    • ありがとう、アレックスですが、少し編集しています

      /*特定のロールの管理バーを非表示にする*/
      if(is_user_logged_in() ) {
      $current_user = wp_get_current_user();
      if ( in_array( ‘subscriber’, (array) $current_user->roles ) ) {
      add_filter(‘show_admin_bar’, ‘__return_false’);
      }
      }

    • Very nice :) but what do I do if I have two roles as a result of bbpress plugin.. That is registered users have the subscriber role in whole site and participant role in bbpress.
      Please help

  20. こんにちは、

    管理バーを非表示にするためのコードを私の会員制サイトに挿入しました。残念ながら、管理者である私からも(上記の最初のオプションを使用したにもかかわらず)非表示になってしまいました。Tesseract Proテーマを使用しています。何か提案はありますか?ありがとうございます。

  21. 拝啓
    WordPressで管理者ユーザーが2名おり、1名には管理者バーを表示し、もう1名には管理者バーを非表示にしたいと考えています。
    どのようにすれば実現できますでしょうか。

    サポートありがとうございます。

  22. これを使ってみたのですが、Parse error: syntax error, unexpected ‘}’ in /home/content/76/10323476/html/wp-content/themes/digitalscience-apex/functions.php on line 168 というコードエラーが発生し、削除してもサイトが元に戻りません。

  23. そうですね、私はそのために current_user_can を使用しません… Codex によると、ロールチェックに使用できるとのことですが、コード内では次のように見つけられます。

    * 特定のロールに対して権限の代わりにチェックすることはサポートされていますが
    * 部分的には、信頼できない結果を招く可能性があるため、この方法は推奨されません。

    より良く、より安全な方法は次のとおりです。

    $user = wp_get_current_user();
    if ( ! in_array( ‘administrator’, (array) $user->roles ) ) {

    }

  24. このコードは私のウェブサイトで機能しません…管理バーを非表示にする他の解決策を持っている人はいますか?

  25. 使用したところサイトがクラッシュしました。現在必死に修正しようとしています。コードを元に戻して更新しましたが、エラーが発生しています:Parse error: syntax error, unexpected ‘3’ (T_LNUMBER) in /home/lyndalspirit/public_html/wp-content/themes/primer/functions.php on line 516

    • Lyndalさん、こんにちは。

      WPBeginnerのようなウェブサイトからコードをコピーする際、ユーザーは誤って行番号までコピーしてしまうことがあります。このコードをfunctions.phpファイルに貼り付けるとエラーが発生します。

      FTPクライアントを使用してサイトに接続する必要があります。functions.phpを見つけ、追加したコードに移動して削除します。変更を保存します。

      管理者

  26. これはそのままうまく機能しました。行番号を削除してテーマの functions.php の末尾に貼り付けました – すぐに成功しました。本当にありがとうございます。

  27. ウェブサイトのメンバー限定エリアへのアクセスから個々の元メンバーを削除するにはどうすればよいですか?

    • 管理者アカウントを使用してWordPress管理画面にログインします。管理画面のサイドバーにあるユーザーメニュー項目をクリックします。これにより、WordPressサイトに登録されているユーザーのリストが表示されます。削除したいユーザーを見つけます。削除したいユーザー名のすぐ下にある「削除」リンクをクリックします。

      管理者

    • JGUISS

      私にはうまくいきませんでした…
      これでうまくいきました: add_filter(‘show_admin_bar’, ‘__return_false’);

      これを追加するとコードはどのようになりますか?PHP にはそれほど詳しくないので、追加できません。

  28. こんにちは!

    多大なご協力、誠にありがとうございます!このコードを関数ファイルにインストールしましたが、機能していないようです。別のブラウザでページを読み込みましたが、ログインバーはまだ表示されています。なぜでしょうか?PHPファイルにコードを追加することに関するあなたの記事も読みました。

    どうか助けていただけると嬉しいです。よろしくお願いします!!

  29. Hi! First of all, thanks for these codes, it’s very helpful, provided I considered myself not a first timer anymore who remember to add after the codes!
    I locked myself at the first time trying to add the php coding in my functions.php file as well, thanks to the “expert” web developer who didn’t show the full set of codes for a function. And thanks to your “what to do when you are locked out of WordPress admin area” site, I found out why I was locked out in the first place! But it took me a downtime of 3 days to figure out how to use the FTP, which at the end failed to function, but my webhost Helpdesk suggested me to use the File Manager in their Control Panel instead! Luckily it works! Lessons learnt the hard way, but worth it.. :P
    Just a kind suggestion, since this site was supposed meant for “WPBeginner”, I think all of the WP users beginner would appreciate if full set of codes are provided, rather than every other person “shouting” in the comment section that “The codes didn’t work, and locked me out”, and then you have to advise them to read a full length of another tutorial how to unlock their website, even though yes, you wish to teach us “How to fish” instead of “Fish for us” every time!
    Anyway, thanks again and appreciate your efforts here in guiding us, the WP Beginners! :)

  30. Yo your code line has ruined both of my sites I cannot acces the wp-admin at all I get a fatal error message.. how can I fix this please :(

  31. 送っていただいたリンクに記載されていることを実行しました。

    サイト全体が消えてしまいました

    何も表示されません。ご自身で確認していただけますか。

返信する

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