WordPressの管理画面で使用しないメニューや変更されると困るといったメニューはありませんか?
お客様にWordPressを提供する場合など、使用するメニューのみ表示していた方が利用する側にとっては使いやすいものになると思います。
イメージ的にはこんな感じです。
なので、今回はWordPressの管理画面で使わないメニューを非表示にカスタマイズする方法を紹介します。
下記は管理画面のメニューを非表示にする方法です。
非表示にしたメニューでもページにはアクセスすることができるので注意が必要です。
まずは、WordPressで使用しているテーマのfunctions.phpを編集します。
functions.phpに下記のコードを追加するとメニューを非表示にすることができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
function remove_menus() { global $menu; unset($menu[2]); // ダッシュボード unset($menu[5]); // 投稿 unset($menu[10]); // メディア unset($menu[20]); // 固定ページ unset($menu[25]); // コメント unset($menu[60]); // 外観 unset($menu[65]); // プラグイン unset($menu[70]); // ユーザー unset($menu[75]); // ツール unset($menu[80]); // 設定 } add_action('admin_menu', 'remove_menus'); |
上記だとデフォルトのメニューが全て非表示になります。
非表示にしたいメニューだけをunset()で削除すれば調整できます。
またはremove_menu_page()関数を使って下記のように記述します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
function remove_menus() { remove_menu_page('index.php'); // ダッシュボード remove_menu_page('edit.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'); // 設定 } add_action('admin_menu', 'remove_menus'); |
メニューを簡単に一覧にしてみたのがこちらです。
key | メニュー | スラッグ |
---|---|---|
2 | ダッシュボード | index.php |
5 | 投稿 | edit.php |
10 | メディア | upload.php |
20 | 固定ページ | edit.php?post_type=page |
25 | コメント | edit-comments.php |
60 | 外観 | themes.php |
65 | プラグイン | plugins.php |
70 | ユーザー | users.php |
75 | ツール | tools.php |
80 | 設定 | options-general.php |
例えば、外観・プラグイン・設定のメニューを非表示にする場合はこのようにします。
1 2 3 4 5 6 7 8 9 10 |
function remove_admin_menus() { global $menu; unset($menu[60]); // 外観 unset($menu[65]); // プラグイン unset($menu[80]); // 設定 } add_action('admin_menu', 'remove_admin_menus'); |
サブメニューを非表示にする際はremove_submenu_page()関数を使用します。
※ダッシュボードの更新メニューを非表示にした場合
1 2 3 4 5 6 |
function remove_menus(){ remove_submenu_page('index.php', 'update-core.php'); } add_action('admin_menu', 'remove_menus'); |
第一引数にメニューのスラッグ、第二引数にサブメニューのスラッグを指定します。
remove_submenu_page(‘ダッシュボード’, ‘更新’);
プラグイン「Contact Form 7」のメニューを非表示にする場合です。
1 2 3 4 5 6 |
function remove_menus(){ remove_menu_page('wpcf7'); } add_action('admin_menu', 'remove_menus'); |
このように設定することで管理画面の使用しないメニューを非表示にすることができます。
今回はWordPressの管理画面で使用しないメニューを非表示にする方法を紹介しました。
自分が使用する時はこのようなカスタマイズをする必要はないですが、お客様や第三者が使う時などには活用できると思います。
変更されたくないページなどは非表示にしていた方が管理者としては安心ですよね。
是非チェックしてみてください。
ホームページに関するお悩みは、仙台のホームページ制作アド・エータイプにお任せください!