WordPress

【WordPress】管理画面の不要なメニューを非表示にする方法

【WordPress】管理画面の不要なメニューを非表示にする方法
WordPressの管理画面のメニューって消すこと出来る?
プラグイン使っても使わなくても出来るよ!

WordPressの管理画面にはたくさんのメニューが表示されています。

よく使うメニューもあればほとんど使わないメニューもあり、クライアントによっては

このメニューって非表示に出来ますか?

と聞かれる事もあります。

プラグインを使っても出来ますが、今回はプラグインを使わない方法をご紹介します。

効率よくWordPress制作したい人はこちら

管理画面のメニューを非表示にする方法

メニューにはメインメニューとサブメニュー、あとはプラグインのメニューがあります。

まずはメインメニューを非表示にする方法からご紹介します。

 

メインメニューを非表示にする方法

まずはデフォルトの状態がこちらになります。

プラグインがいくつか入っていますが、それについては後ほど解説します。

まずはこれらのメニューを非表示にするにはfunctions.phpにコードを追加します。

// 管理画面からメインメニューを非表示にする 
function remove_menus() {
  remove_menu_page( 'index.php' ); // ダッシュボード
  remove_menu_page( 'edit.php' ); // 投稿
  remove_menu_page( 'edit.php?post_type=campaign' ); // カスタム投稿タイプcampaign
  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' ); // 設定 
} 
add_action( 'admin_menu', 'remove_menus', 999 );

すると表示がこのようになります。

そしてこの残った3つはプラグインメニューになります。

 

プラグインメニューを非表示にする方法

プラグインメニューを非表示にする方法ですが、とりあえず先ほどの3つを非表示にするには以下のコードを書きます。

// 管理画面からプラグインメニューを非表示にする
function remove_plugins_menus() {
  remove_menu_page( 'wpcf7' ); // Contact Form 7
  remove_menu_page( 'ai1wm_export' ); // All-in-One WP Migration
  remove_menu_page( 'cptui_main_menu' ); // Custom Post Type UI
}
add_action( 'admin_menu', 'remove_plugins_menus' );

するとこのように綺麗にメニューが非表示になりました。

しかしプラグインは無数にあるので、remove_menu_page( 'wpcf7' );のカッコ内に入れるスラッグの調べ方を知る必要があります。

それには検証ツール(デベロッパーツール)を開いて調べます。

Contact Form7の場合は、メニューのaタグを見てみます。

ここがadmin.phpの場合はpage=の後が非表示にするのに必要なスラッグとなります。

edit.phpの場合は以下の赤枠全部でOKです。

 

サブメニューを非表示にする方法

次はサブメニューを非表示にする方法です。

サブメニューとはメインメニューの下層メニューになります。

ちょっと量が多いですが、以下になります。

// 管理画面からサブメニューを非表示にする
function remove_sub_menus() {
	remove_submenu_page( 'index.php', 'index.php' ); // ダッシュボード → ホーム
	remove_submenu_page( 'index.php', 'update-core.php' ); // ダッシュボード → 更新

	remove_submenu_page( 'edit.php', 'edit.php' ); // 投稿 → 投稿一覧
	remove_submenu_page( 'edit.php', 'post-new.php' ); // 投稿 → 新規追加
	remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=category' ); // 投稿 → カテゴリー
	remove_submenu_page( 'edit.php', 'edit-tags.php?taxonomy=post_tag' ); // 投稿 → タグ
	
	remove_submenu_page( 'edit.php?post_type=campaign', 'post-new.php?post_type=campaign' ); //カスタム投稿「campaign」 新規追加
	remove_submenu_page( 'edit.php?post_type=campaign', 'edit-tags.php?taxonomy=campaign_cat&post_type=campaign' ); //カスタム投稿campaignのカスタムタクソノミーcampaign_cat
	
	remove_submenu_page( 'upload.php', 'upload.php' ); // メディア → ライブラリ
	remove_submenu_page( 'upload.php', 'media-new.php' ); // メディア → 新規追加

	remove_submenu_page( 'edit.php?post_type=page', 'edit.php?post_type=page' ); // 固定 → 固定ページ一
	remove_submenu_page( 'edit.php?post_type=page', 'post-new.php?post_type=page' ); // 固定 → 新規追加

	remove_submenu_page( 'themes.php', 'themes.php' ); // 外観 → テーマ
	remove_submenu_page( 'themes.php', 'customize.php?return=' . rawurlencode( $_SERVER['REQUEST_URI'] ) ); // 外観 → カスタマイズ
	remove_submenu_page( 'themes.php', 'nav-menus.php' ); // 外観 → メニュー
	remove_submenu_page( 'themes.php', 'widgets.php' ); // 外観 → ウィジェット
	remove_submenu_page( 'themes.php', 'theme-editor.php' ); // 外観 → テーマエディタ

	remove_submenu_page( 'plugins.php', 'plugins.php' ); // プラグイン → インストール済みプラグイン
	remove_submenu_page( 'plugins.php', 'plugin-install.php' ); // プラグイン → 新規追加
	remove_submenu_page( 'plugins.php', 'plugin-editor.php' ); // プラグイン → プラグインエディタ

	remove_submenu_page( 'users.php', 'users.php' ); // ユーザー → ユーザー一覧
	remove_submenu_page( 'users.php', 'user-new.php' ); // ユーザー → 新規追加
	remove_submenu_page( 'users.php', 'profile.php' ); // ユーザー → あなたのプロフィール

	remove_submenu_page( 'tools.php', 'tools.php' ); // ツール → 利用可能なツール
	remove_submenu_page( 'tools.php', 'import.php' ); // ツール → インポート
	remove_submenu_page( 'tools.php', 'export.php' ); // ツール → エクスポート
	remove_submenu_page( 'tools.php', 'site-health.php' ); // ツール → サイトヘルス
	remove_submenu_page( 'tools.php', 'export-personal-data.php' ); // ツール → 個人データのエクスポート
	remove_submenu_page( 'tools.php', 'erase-personal-data.php' ); // ツール → 個人データの消去

	remove_submenu_page( 'options-general.php', 'options-general.php' ); // 設定 → 一般
	remove_submenu_page( 'options-general.php', 'options-writing.php' ); // 設定 → 投稿設定
	remove_submenu_page( 'options-general.php', 'options-reading.php' ); // 設定 → 表示設定
	remove_submenu_page( 'options-general.php', 'options-discussion.php' ); // 設定 → ディスカッション
	remove_submenu_page( 'options-general.php', 'options-media.php' ); // 設定 → メディア
	remove_submenu_page( 'options-general.php', 'options-permalink.php' ); // 設定 → パーマリンク
	remove_submenu_page( 'options-general.php', 'options-privacy.php' ); // 設定 → プライバシー
}
add_action( 'admin_menu', 'remove_sub_menus', 999 );

これでメインメニューにカーソルを乗せてもサブメニューは表示されなくなります。

 

アドミンバーのメニューを非表示にする方法

管理者がページを開くと上に黒いバーが表示されます。

これをアドミンバーやツールバーと言いますが、このメニューも1つずつ非表示にする事が出来ます。

// アドミンバーのメニューを非表示にする
function remove_admin_bar_menus( $wp_admin_bar ) {
  $wp_admin_bar->remove_menu( 'wp-logo' ); // ロゴ
  $wp_admin_bar->remove_menu( 'about' ); // ロゴ → WordPressについて
  $wp_admin_bar->remove_menu( 'wporg' ); // ロゴ → WordPress.org
  $wp_admin_bar->remove_menu( 'documentation' ); // ロゴ → ドキュメンテーション
  $wp_admin_bar->remove_menu( 'support-forums' ); // ロゴ → サポート
  $wp_admin_bar->remove_menu( 'feedback' ); // ロゴ → フィードバック
  $wp_admin_bar->remove_menu( 'site-name' ); // サイト名
  $wp_admin_bar->remove_menu( 'comments' ); // コメント
  $wp_admin_bar->remove_menu( 'new-content' ); // 新規
  $wp_admin_bar->remove_menu( 'new-post' ); // 新規 → 投稿
  $wp_admin_bar->remove_menu( 'new-media' ); // 新規 → メディア
  $wp_admin_bar->remove_menu( 'new-page' ); // 新規 → 固定
  $wp_admin_bar->remove_menu( 'new-user' ); // 新規 → ユーザー
  $wp_admin_bar->remove_menu( 'customize' ); // カスタマイズ
  $wp_admin_bar->remove_menu( 'edit' ); // 固定ページを編集
  $wp_admin_bar->remove_menu( 'my-account' ); //こんにちは、[ユーザー名]さん
  $wp_admin_bar->remove_menu( 'user-info' ); // ユーザー → [ユーザー名]
  $wp_admin_bar->remove_menu( 'edit-profile' ); //ユーザー → プロフィールを編集
  $wp_admin_bar->remove_menu( 'logout' ); //ユーザー → ログアウト
  $wp_admin_bar->remove_menu( 'search' ); //検索
}
add_action( 'admin_bar_menu', 'remove_admin_bar_menus', 999 );

以上になります。

使わない項目が表示されているとクライアントが誤って消してしまう可能性もあります(以前トップページをゴミ箱に捨ててしまったクライアントがいました)

そういったリスクを避けるだけでなく、見やすくする為にも不要なメニューは非表示にするとスッキリしていいかと思います。

 

WordPress案件の単価と作業効率を上げる!

Brainランキング1位獲得 & 3日で500部突破

クチコミ約280件(平均スコア

今だけ!5大特典あり🎁

-WordPress