-3

I'm trying to block any admin of a Wordpress install from being able to modify certain pages, the sort of stuff detailed here: http://wackao.com/be-a-wordpress-super-administrator/ . Is this even possible? Thank you.

I would like to do this by modifying the core word press files.

2
  • 3
    Downvote for "I would like to do this by modifying the core word press files." Unless you intend to maintain a forked application, modifying core files is strongly discouraged. Apr 9, 2012 at 18:12
  • 1
    Seconded - WordPress is designed so you should never need to modify core files.
    – SickHippie
    Apr 9, 2012 at 19:32

2 Answers 2

6

I would recommend creating a Custom User Role, using the add_role() function, such as a "Site Admin" or "Sub-Admin" (or whatever you want to call it). Then, you can assign specific user capabilities to that custom role, thereby giving users exactly the capabilities you want them to have, without giving them the capabilities you don't want them to have.

For example:

<?php
add_role( 
    // Role slug
    'sub-admin', 
    // Role display name
    'Sub-Admin', 
    // Capabilities
    array(
        activate_plugins,
        add_users,
        create_users,
        delete_others_posts,
        delete_pages,
        delete_plugins,
        delete_posts,
        delete_private_pages,
        delete_private_posts,
        delete_published_pages,
        delete_published_posts,
        delete_users,
        edit_dashboard,
        edit_files,
        edit_others_posts,
        edit_pages,
        edit_posts,
        edit_private_pages,
        edit_private_posts,
        edit_published_pages,
        edit_published_posts,
        edit_theme_options,
        export,
        import,
        list_users,
        manage_categories,
        manage_links,
        manage_options,
        moderate_comments,
        publish_pages,
        publish_posts,
        read_private_pages,
        read_private_posts,
        read,
        remove_users,
        switch_themes,
        unfiltered_upload,
        upload_files
    ) 
);
?>

(Those are the default "administrator" capabilities, with caps related to editing others' pages, and promoting users, removed.)

Available Plugins

There are several Plugins available that provide a UI for creating and modifying user roles, including:

2
  • 2
    In addition to the plugins Chip pointed out, check out User Role Editor - this is the plugin I currently use for role management, and it's done very well for me.
    – SickHippie
    Apr 9, 2012 at 19:35
  • Thanks for that, super helpful and hard to find info.
    – avia
    Nov 12, 2020 at 14:23
1

Yes, anything is possible with the use of the internet combined with precise and thought-out questions. Here's a plug-in that might help: http://urbangiraffe.com/plugins/user-permissions/

3
  • Ok, but if the admin can disable it, it's basically no good, that's why I was thinking of modifying WP core files
    – Andrew
    Apr 5, 2012 at 19:15
  • And that is why you should modify your question :)
    – RyanS
    Apr 5, 2012 at 19:26
  • Maybe consider granter more permission to a lower level, instead of taking the admin down a notch.
    – RyanS
    Apr 6, 2012 at 16:54

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.