How to Hide Admin Menu Items by User Role in WordPress
Need to hide admin menu items in WordPress for specific user roles? Whether you want to simplify the dashboard for editors, restrict authors from accessing certain settings, or clean up the admin area for clients, hiding menu items per role is one of the most practical things you can do. This guide shows you how to do it without writing any code. Why Hide Admin Menu Items in WordPress? The WordPress admin dashboard shows a lot of menu items by default. Not every user needs access to everything. Here are common reasons to hide menu items: Two Approaches to Hiding Menu Items There are two ways to hide admin menu items in WordPress: 1. Hide Menu Only (Visual Cleanup) This approach hides the menu items from the sidebar, but users can still access those pages if they type the URL directly. This is useful for simple UI cleanup where you trust the users but want a cleaner dashboard. 2. Hide Menu + Block URL Access (Full Restriction) This approach hides the menu items AND blocks direct URL access. If a user tries to access a restricted page by typing the URL, they see a styled “Access Restricted” page instead. This is the recommended approach for actual security restrictions. How to Hide Admin Menu Items by Role (Step by Step) We’ll use Incognito Admin Manager, a WordPress admin customization plugin with a built-in Access Role Creator that makes this simple. Step 1: Install the Plugin You can also download it free from WordPress.org. Step 2: Open Access Role Creator After activation, go to Incognito Admin → Access Roles in your admin menu. This is where you configure which menu items are visible for each user role. Step 3: Select a User Role Choose the role you want to restrict from the dropdown. Available roles include: Note: Administrators cannot be restricted. This is a built-in safety feature to prevent lockouts. Step 4: Select Menu Items to Hide You’ll see a tree of all admin menu items. Check the boxes next to any menus you want to hide for the selected role. You can: Step 5: Choose a Restriction Mode (Pro) The Pro version lets you choose how restrictions are enforced: The free version hides menu items from the sidebar visually. Step 6: Save and Test Click Save Changes. Then log in with a test user of that role (or use a plugin like User Switching) to verify the menu items are hidden. Common Examples Hide Plugins and Settings from Editors Editors typically only need access to Posts, Pages, and Comments. You can hide Plugins, Appearance, Settings, Tools, and Users menus for the Editor role to keep the dashboard focused on content management. Hide Everything Except Posts for Authors Authors usually only need to write and manage their own posts. Hide all menus except Posts and their Profile to create a distraction-free writing dashboard. Client Dashboard Cleanup For client sites, hide technical menus like Plugins, Appearance → Editor, Tools, and Settings. Leave only the menus clients actually use: Posts, Pages, Media, and their custom post types. Per-Role Pro Features The Pro version adds additional per-role options beyond menu hiding: Troubleshooting Menu Items Still Showing? User Can Still Access Pages by URL? If you’re using the free version or “Hide Menu Only” mode, menu items are hidden visually but URLs are not blocked. Upgrade to Pro and select “Block & Show No Access Page” mode to fully block direct URL access. Frequently Asked Questions Can I lock myself out by hiding menu items? No. Administrators are automatically excluded from all restrictions. You cannot restrict the Administrator role, so there is no risk of locking yourself out. Does hiding menus affect what users can actually do? Hiding menus removes them from the sidebar. In “Hide Menu Only” mode, users can still access pages by direct URL. In “Block & Show No Access Page” mode (Pro), both the menu and URL access are blocked. Can I set different restrictions for different roles? Yes. Each role has its own set of restrictions. You can hide different menus for Editors, Authors, Contributors, and any custom roles independently. Does this work with custom roles from other plugins? Yes. Any role registered in WordPress will appear in the role dropdown, including custom roles from plugins like WooCommerce, BuddyPress, or Members. Conclusion Hiding admin menu items in WordPress by user role is essential for creating a clean, professional, and secure dashboard experience. With Incognito Admin Manager, you can configure restrictions per role in minutes without any code. Get started now: