WordPressサイトでログインユーザーに応じて管理画面のメニューを消す方法

2025/11/13 | Web制作・開発

WordPressサイトでダッシュボードへのログインユーザーに応じて管理画面のメニューを消す方法をご紹介します。

メニューを消したダッシュボードのイメージ

今回はダッシュボード左側のメニューを例にご紹介します。

何も設定してないダッシュボードでは、以下のように多数のメニューが表示されています。

メニューを消す前のダッシュボード

今回ご紹介する設定をすべて追加すると、ダッシュボードのメニューが以下のように「投稿」メニューのみとなります。

ログインユーザーに応じて管理画面のメニューを消す方法

WordPressのテーマファイルを編集してメニューを消します。

テーマファイルを編集する際は子テーマを作成してそちらで作業します。

WordPress子テーマの作り方はこちらから

コードの全体像

次の処理を子テーマのfunctions.phpに追加します。

function my_first_page()
{
    if (strpos($_SERVER['SCRIPT_NAME'], '/wp-admin/index.php') !== false) {
        wp_redirect(admin_url('edit.php'));
    }
}

function my_admin_menus()
{
    remove_menu_page('index.php');
    remove_menu_page('upload.php');
    remove_menu_page('edit.php?post_type=page');
    remove_menu_page('edit-comments.php');
    remove_menu_page('themes.php');
    remove_menu_page('plugins.php');
    remove_menu_page('users.php');
    remove_menu_page('tools.php');
    remove_menu_page('options-general.php');
    remove_menu_page('profile.php');
}

if (strcmp(wp_get_current_user()->user_login, 'editor') === 0) {
    add_action( 'admin_init', 'my_first_page' );
    add_action( 'admin_menu', 'my_admin_menus');
}

このコードでは、ユーザー名が「editor」でダッシュボードにログインしたとき、WordPress管理画面が表示される前に次の処理を行っています。

  • 「投稿」メニュー以外を非表示にする
  • ダッシュボードから「投稿」メニューへリダイレクトする

まとめ

WordPressサイトでダッシュボードへのログインユーザーに応じて管理画面のメニューを消す方法をご紹介しました。

同じような要領でヘッダーバーのメニューなども消すことができます。

例えばWordPressに詳しくない方へお知らせの更新をお願いするときは、「投稿」メニュー以外を非表示にして、さらにはじめから「投稿」メニューを表示しておくと、どのメニューを選べばいいのかなどの迷いを極力減らすことができます。

弊社ではWEBサイトの制作や保守を行っています。WordPressサイトも対応しているのでお気軽ご相談ください。

ITサポート・WEBサイト製作はお任せください

  • パソコンの調子がおかしい
  • メールの添付ファイルが開けない
  • 業務をシステム化したい
  • WEBサイトを作りたい
  • WEBサイトの表示がおかしい
  • WEBサイトを更新したい
  • and more...
ご相談・お見積り

検索

ご相談・お見積りは
こちらから