WPの管理画面で特定の権限でのみ非表示にする

2025.02.11 09:00
2025.02.07 09:32
WPの管理画面で特定の権限でのみ非表示にする

WPで複数ユーザー運営をしている際に、特定の権限のユーザーのみ管理画面のメニューを使わないようにするやり方を調べました。

やり方はfunction.phpに以下を記載します。

/**
 * 事業所ユーザーサイドメニューでオフにする項目を設定
 */
add_action( 'admin_menu', 'remove_menus' );
function remove_menus(){
    if( current_user_can( 'author' ) ){ // 除外する権限
        remove_menu_page( 'upload.php' ); //メディア
        remove_menu_page( 'edit-comments.php' ); //コメント
        remove_menu_page( 'themes.php' ); //外観
        remove_menu_page( 'plugins.php' ); //プラグイン
        remove_menu_page( 'tools.php' ); //ツール
        remove_menu_page( 'options-general.php' ); //設定
        remove_menu_page( 'profile.php'); // プロフィール
        remove_menu_page( 'wpcf7'); // contactform7
    }
}

例えば「remove_menu_page(‘upload.php’)」などとすると、メディアにアクセスできなくなります。
ただしこれだと全権限見れなくなるので、「if(current_user_can(‘author’))」などとして、特定のユーザーの場合だけの処理にします。

今回は以上です!