Remove Admin Menus from WordPress Backend

,

Sometimes, as a developer, it may be beneficial to hide particular WordPress Admin Menu Links from backend users. Particularly if they are easily enticed by new shiny buttons.

 

Removing WordPress Backend Admin Menus

REVEAL CODE

/*
** Remove Menu Items
*/

add_action( 'admin_menu', 'remove_menus' );
function remove_menus()

{
    remove_menu_page( 'index.php' ); //Dashboard
    remove_menu_page( 'edit.php' ); //Posts
    remove_menu_page( 'upload.php' ); //Media
    remove_menu_page( 'edit.php?post_type=page' ); //Pages
    remove_menu_page( 'edit-comments.php' ); //Comments
    remove_menu_page( 'themes.php' ); //Appearance
    remove_menu_page( 'plugins.php' ); //Plugins
    remove_menu_page( 'users.php' ); //Users
    remove_menu_page( 'tools.php' ); //Tools
    remove_menu_page( 'edit.php?post_type=portfolio' ); //Portfolio
    remove_menu_page( 'options-general.php' ); //Settings
}

 

Removing WordPress Backend Menus for Non-Administrators

REVEAL CODE

/*
** Remove Menu Items for Non-Admins
** Simply wrap above with "if current user not admin" logic
*/
if( !current_user_can( 'administrator' ) )
{
    add_action( 'admin_menu', 'remove_menus' );
    function remove_menus()

    {
        remove_menu_page( 'index.php' ); //Dashboard
        remove_menu_page( 'edit.php' ); //Posts
        remove_menu_page( 'upload.php' ); //Media
        remove_menu_page( 'edit.php?post_type=page' ); //Pages
        remove_menu_page( 'edit-comments.php' ); //Comments
        remove_menu_page( 'themes.php' ); //Appearance
        remove_menu_page( 'plugins.php' ); //Plugins
        remove_menu_page( 'users.php' ); //Users
        remove_menu_page( 'tools.php' ); //Tools
        remove_menu_page( 'edit.php?post_type=portfolio' ); //Portfolio
        remove_menu_page( 'options-general.php' ); //Settings
    }
}

 

If this article was helpful please take a moment to like us on Facebook, share this on your social media or buy us a cup of coffee.