WordPressの管理画面は、非常に便利で多機能なツールですが、利用しない機能が多い場合、メニューが多すぎて管理が煩雑になることがあります。特に、複数のユーザーでサイトを運営している場合、特定のメニューを非表示にしておくことで、誤操作を防ぎ、管理効率を向上させることが可能です。
メニューを非表示にする方法
以下のコードをテーマの functions.php ファイルに追加してください。
function remove_admin_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_admin_menus');PHPこのコードは、指定されたメニュー項目を非表示にします。remove_menu_page() の引数には、非表示にしたいメニューのスラッグ(メニュー識別子)を指定します。
特定のユーザー権限に応じたメニューの非表示
特定のユーザーにのみ非表示にしたい場合は、以下のようにコードを変更します。
function remove_admin_menus_for_editors() {
if (!current_user_can('administrator')) {
remove_menu_page('index.php'); // ダッシュボード
remove_menu_page('edit.php'); // 投稿
remove_menu_page('upload.php'); // メディア
remove_menu_page('edit-comments.php'); // コメント
remove_menu_page('plugins.php'); // プラグイン
}
}
add_action('admin_menu', 'remove_admin_menus_for_editors');PHPこのコードでは、current_user_can(‘administrator’) を使用して、管理者以外のユーザーに特定のメニューを非表示にしています。
メニューIDを使用した非表示
WordPressのメニュー項目は $menu 配列で管理されています。この配列のインデックスを使用してメニューを非表示にする方法もあります。
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');PHPunset() を使用して、特定のインデックスを非表示にします。この方法は、よりシンプルで柔軟性があります。
メニューのスラッグは、ブラウザのアドレスバーに表示されるURLから確認できます。
例えば、「投稿」メニューのスラッグは edit.php です。このスラッグをコード内で指定することで、該当するメニューを非表示にできます。
注意点
- functions.php の編集時は注意: 間違ったコードを記述すると、サイトが動作しなくなる可能性があります。必ずバックアップを取ってから編集してください。
- 管理者権限を確認: 必要なメニューまで非表示にしないよう、管理者権限で確認を行いましょう。
- プラグインの活用: コード編集が難しい場合、管理画面メニューをカスタマイズするプラグイン(例: Admin Menu Editor)を活用するのも一つの方法です。
まとめ
WordPressの管理画面で使わないサイドメニューを非表示にすることで、作業効率が向上し、管理の安全性も高まります。functions.php に簡単なコードを追加するだけで、メニューの整理が可能です。必要に応じて、特定のユーザーグループに応じた設定も行えます。
以上の方法を参考に、WordPressの管理画面をカスタマイズして、より快適なサイト運営を目指しましょう。

コメント