• RSS

[WP]WordPressで管理者以外がログインした時に、特定のメニューを表示させない方法

  • このエントリーをはてなブックマークに追加
  • follow us in feedly

WordPress 管理画面で特定のメニューを表示・非表示にしたい場合、権限別に細かい制御ができる「User Role Editor」というプラグインを使う手もありますが、

例えば「管理者以外のユーザーには『リンク』メニューを見せない」といった簡単な制御であれば、functions.php を編集して表示・非表示の処理をした方が早い場合もあります。

functions.php の編集

管理者以外のユーザー(level_10 以下の権限のユーザ−)が管理画面にログインした際に、特定のメニュー(以下の例では「リンク」)が非表示になります。
<?php
function remove_menus () {
	if (!current_user_can('level_10')) {
		global $menu;
		//unset($menu[2]); // ダッシュボード
		//unset($menu[4]); // 区切り線
		//unset($menu[5]); // 投稿
		//unset($menu[10]); // メディア
		unset($menu[15]); // リンク
		//unset($menu[20]); // ページ
		//unset($menu[25]); // コメント
		//unset($menu[59]); // 区切り線
		//unset($menu[60]); // テーマ
		//unset($menu[65]); // プラグイン
		//unset($menu[70]); // プロフィール
		//unset($menu[75]); // ツール
		//unset($menu[80]); // 設定
		//unset($menu[90]); // 区切り線
	}
}
add_action('admin_menu', 'remove_menus');
?>
上記のようにメニューを全部書く必要はないですが、表示させるメニューにはコメントアウトしておきます。



  • このエントリーをはてなブックマークに追加
  • follow us in feedly

コメント

コメントを残す

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください