How to Disable Admin Bar for All Users Except Site Admin

To disable the admin bar for all users except the site admin in WordPress, you can use the `show_admin_bar` filter along with the `current_user_can()` function to check the user’s capabilities. Here’s an example of how you can achieve this:

// Function to disable admin bar for non-admin users
function disable_admin_bar_for_non_admins() {
    if (!current_user_can('administrator') && !is_admin()) {
        show_admin_bar(false);
    }
}
add_action('after_setup_theme', 'disable_admin_bar_for_non_admins');

 

In this example, the `disable_admin_bar_for_non_admins()` function is hooked to the `after_setup_theme` action, which ensures it is executed early in the WordPress initialization process. Inside the function, it checks if the current user does not have the ‘administrator’ capability and is not in the admin area (`is_admin()`). If the user does not meet these conditions, the `show_admin_bar()` function is called with `false` as the argument to disable the admin bar for that user.

By using this code snippet, the admin bar will be hidden for all users except those with the ‘administrator’ role. This provides a clean and focused interface for non-admin users while preserving the admin bar functionality for site admins.

You can place this code in your theme’s `functions.php` file or in a custom plugin. Remember to save the changes and test the functionality while logged in as a non-admin user to ensure the admin bar is appropriately disabled.

[TheChamp-Sharing]

Related Blogs

WooCommerce: Add A New Checkout Field.

To add a new checkout field in WooCommerce, you can use the `woocommerce_after_order_notes` action hook to display the new field on the checkout page. Additionally, you’ll need to use the `woocommerce_checkout_process` and `woocommerce_checkout_update_order_meta` filter hooks to handle the validation and saving of the field data.

WooCommerce: Check if Product Category is in the Cart

To check if a specific product category is in the cart during the `woocommerce_before_cart` action hook, you can use a similar approach as in the previous answer. However, in this case, you need to use the `woocommerce_before_cart_contents` action hook, which fires before the cart items are displayed on the cart page. Here’s how you can achieve this:

Request A Quote

Privacy Overview

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.