最近のプラグインはやたらとダッシュボードのサイドバーに設定用のメニューを作ると思いませんか?
まあ最初に設定するときには有効化してすぐに見つけられるから便利だとは思うのですが、一度設定したらほとんど変更しないものもありますよね?
そんなときどうしてます?やっぱりプラグイン探しですかね?でもこんなことだけのためにプラグインを1つ増やすのも・・・でそのままにしているとどんどん増えてもう・・・となってしまうことも。
実はこれ、わざわざプラグイン使わなくても簡単にできるんです。今回はプラグインを使わずにダッシュボードのサイドバーにある不要なメニューを非表示にする方法を紹介します。
ダッシュボードのサイドバーにある不要なメニューを非表示にする方法
設定は簡単、これから紹介するコードを自身の環境に合わせて変更したうえで、テーマのfunctions.phpへ追記するだけです。
// 管理画面サイドバーメニュー非表示
function remove_menus () {
if (current_user_can('administrator')) { //管理者権限のユーザー
remove_menu_page('edit-comments.php'); // コメント
remove_menu_page('link-manager.php'); // リンク
}
}
add_action('admin_menu', 'remove_menus');
コード例ではコメントとリンクのメニューを非表示にしてますが、そのほかのメニューももちろん追加も削除もできます。
追加する場合は
remove_menu_page('非表示にするプログラムや画面');
の行をコピペして「非表示にするプログラムや画面」の部分を変更するだけです。
とはいえ、上のコメントのように「edit-comments.php」なんてどこにも書いてありませんから、一度非表示にしたいメニューを表示して調べます。
例えばコメントの場合、クリックして開くとURLは「サイトのアドレス/wp-admin/edit-comments.php」になってますよね?この最後のスラッシュ(/)の後にある「edit-comments.php」をコピーする、ただそれだけです。
またプラグインが作ったメニューの場合はURLが「サイトアドレス・・・page=〇〇」となっていることもありますから〇〇の部分をコピーすればOKです。
いちいち覚えたりする必要はありませんから簡単に非表示にできますね。
逆に非表示にしたものを再表示したい場合はわざわざ行を削除しなくてもコメントアウトすれば大丈夫です。
例えばコメントの場合、非表示にする場合には
remove_menu_page('edit-comments.php');
を記述しますけど、先頭に「//」をつけて
//remove_menu_page('edit-comments.php');
とすれば書いてあるけど動作しない(これをコメントアウトと言います)ようにできます。一時的に表示したい場合に便利だと思います。
まあ簡単なコードなので大丈夫だと思いますが、もしもfunctions.phpの編集に失敗して画面が真っ白になってしまったら
を参考に復旧してください(WordPressのバージョン4.9以降ではエラーの場合更新できないようになっているので安心です)

