WordPress Super Admin

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:

Leave a Comment

error code: 523