This should already be the case, non-administrators do not have access to the ‘Appearance’ menu by default.
Here is a list of each role and their capabilities:
https://codex.wordpress.org/Roles_and_Capabilities
Okay so if you want to hide it for everyone, remove_meta_box() won’t work because it’s not a meta box as far as I can tell from looking at the source.
So alternatively what you could do is:
- Remove the menu item using
remove_submenu_page('themes.php','widgets.php');
however the page would still be accessible to admins if they just type in the correct url. - Use css to hide the widget. Use
admin_enqueue_scripts
to set that up.
Related Posts:
- Add the sidebar/widget editor to the post edit screen?
- Widget page is missing from menu and default widgets are not showing
- How to dynamically add the the input text field in widget?
- How to add a text widget on the posts admin page?
- How to give a File Upload option in wordpress Widget backend?
- Creating an custom admin page for editing widgets
- Tabbed navigation in widget backend
- How Can I Add the “Insert From URL” Tab to a Custom 3.5 Media Uploader?
- Where is the content of widgets stored in mysql table
- How to refresh Theme Customizer after change color inside wpColorPicker?
- How do I rebind event after widget save
- Determining a Widget Instance and Sidebar Location?
- Randomize widgets displayed in my sidebar [duplicate]
- Calling static method in the Widget Class
- Remove […] from RSS feed?
- Difference between widget form code variables
- How to create a widget that has a submit form in the front end
- Modifying recent post widget to include icons for post titles
- Unfiltered html in widget title not working
- How to process content in a widget? [duplicate]
- How Can I Register Menus and Widgets Conditionally Based on Theme Options/Settings?
- check for shortcode in post/pages AND widgets AND template files
- Why can’t I add this feed to the RSS widget?
- Why use dynamic_sidebar() conditionally?
- WordPress Widget multiple use
- Contact Form in sidebar [closed]
- Using Advanced Custom Fields in a widget
- Closest thing to an is_widget() tag?
- More flexible sidebar and widget management
- Dynamic Sidebars On Multiple Subpages
- Can I remove a widget area without editing code?
- Cannot save widgets in custom sidebars
- Disable widgets on specific posts
- register widget class not written in theme
- Font awesome Icon HTML in widgets disappear on save
- How to determine the number of widgets contained in a sidebar via customizer JS
- Hide widget if user is logged in without plugin
- Toggle option in sidebar widgets
- Add field to dashboard to update embedded URL on homepage?
- How can hide widget title if custom widget is empty
- styling back end widget form and enabling multi widget feature
- How to show different widgets on different pages in a user friendly way
- widgetlogic and permalinks
- allow user to style widget backgound per widget
- I’m trying to find a basic plugin for displaying images in a widget [closed]
- A form in a custom widget
- Elementor widgets – conditional controls
- Widgets in home.php redirect to index.php
- How to track whether the user has changed the value of the field in the widget or not?
- Problem creating an array instance in a widget in 4.4 update
- Redirect to page after a widget form submit
- WordPress: How to embed a widget on a separate website?
- Widget on the right side of the page overlaps with the left side [closed]
- Where to put custom widget file?
- Making tags appear as an Unordered list instead of a ‘cloud’
- Shortcode not working in widget
- How to pass a special CSS class into widget li
- Show Woocommerce Product “attributes/extra information tab” in widget [closed]
- How to use the widget area to extend the page content?
- wordpress widget missing jquery
- Display a widget on a specific type of archive
- Add a specific css to a widget
- Widget Title is not saving in backend
- Add class to on sidebar widget
- Save button is not working on custom widget
- WordPress update not saving
- WordPress Edit Button not appearing for widget in customizer
- WordPress database error – quick review
- Select two value from meta key and post meta
- Add drop down to widget if it is in a certain area
- using get_template_part() inside a widget and passing variables
- Widget select option not saving
- How do I exclude portrait pictures from the nextgen gallery sidebar widget?
- Add html after the first widget in a sidebar
- How to use multiple instances of Deal or Announcement With Countdown Timer Plugin Widget
- Changing the order of widgets according to current page?
- Your theme has 8 widget areas, but this particular page doesn’t display them
- A message to clients in the dashboard widget received from another site
- How to get individual values from custom widget?
- How would you return a value from an individual field in a custom widget?
- Can view Social Media buttons only in the private mode – why?
- Before_widget won’t show up
- Widget Registration Problem
- Reload widget with AJAX
- Function for widget titles
- The WP_Widget class seems to run many times on a page load
- How to check widget-cpt meta and display its custom css in the head?
- How to add WooCommerce Add to Cart button in widget?
- How to call theme default widget in custom template?
- How to place a widget beside a div/text so that they display as a continuous line
- How can I build a widget area widget using the built in WordPress functionalities?
- Widget Logic code for different PMP membership levels
- How to Activate WordPress Widgets
- How to display a widget available for all themes
- How to output built-in widgets with number in range as class?
- widgets in contacts only
- How to create a widget on witch a registered user can create a checklist
- How can I create my own widgets in WordPress? [closed]
- Unable to add options on dashboard widget ?
- is it possible to create custom widgets page in admin?