=== PublishPress Capabilities - User Role Access, Editor Permissions, Admin Menus === Contributors: publishpress, kevinB, stevejburge, andergmartins Author: PublishPress Author URI: https://publishpress.com Tags: user roles, capabilities, permissions, admin menus, post editing, post types, taxonomies Requires at least: 4.9.7 Tested up to: 5.9 Requires PHP: 5.6.20 Stable tag: 2.3.4 License: GPLv3 License URI: https://www.gnu.org/licenses/gpl-3.0.html The best permissions plugin allows you to customize user roles, editor features and admin menus. You control who has access to your WordPress site. == Description == [PublishPress Capabilities](https://publishpress.com/capabilities/) gives you control over all the permissions on your WordPress site. We built this user role editor plugin so you have an EASY and POWERFUL way to manage users. You can **customize all your WordPress user roles**, from Administrators and Editors to Authors, Contributors, Subscribers and custom roles. Each use role can have the exact permissions that your site needs. You can use PublishPress Capabilities to clean up the post editing screen. You can decide what authors see when they're writing posts. You can **hide any features on the Gutenberg or Classic Editor screens**. The Pro version of PublishPress Capabilities enables you to stop users from accessing any admin menu link and any frontend menu link. PublishPress Capabilities is **safe to use**. Every time you change your site's permissions, this plugin will take a backup that you can restore if anything goes wrong. You can use these backups to migrate your roles and permissions from one site to another. ## PublishPress Capabilities Pro ## > Upgrade to Capabilities Pro
> This plugin is the free version of PublishPress Capabilities. The Pro version of Capabilities has all the features you need to control permissions for your WordPress users. With Capabilities Pro you can manage access to posts, pages, media and custom post types. Click here to control access to your WordPress site with Capabilities Pro! ## The Key Features of PublishPress Capabilities ## 1. **User role editor**: You can change the capabilities for any role. 2. **Works for all post types**: Choose who can Publish, Read, Edit and Delete content for any post type. 3. **Works for all taxonomies**: Choose who can Manage, Edit and Assign terms in any taxonomy. 4. **Hide admin area features**: Remove items from the WordPress toolbar, plus dashboard widgets. 5. **Hide editor features**: Decide what users see when they're writing posts in Gutenberg or the Classic Editor. 6. **Hide editor metaboxes (Pro version)**: You can hide metaboxes on the post editing screen. 7. **Safe backups**: Every time you change your permissions, PublishPress Capabilities saves a backup. 8. **Create or copy user roles**: Add new roles, or clone existing roles. 9. **Frontend menus (Pro version)**: Stop users from accessing any frontend menu link. 10. **Admin menus (Pro version)**: Stop users from accessing any admin menu link. 11. **Media library permissions**: Decide who can upload, edit and delete files. 12. **WooCommerce permissions**: Control access to WooCommerce products, orders, coupons and more. 13. **Multisite support**: Manage permissions on a single site or across your whole network. ## #1. WordPress User Role Editor ## PublishPress Capabilities gives you detailed control over all the permission levelsss on your WordPress site. You can edit user roles on your site, from Administrator and Editor to Contributor and Subscriber. With the Capabilities plugin, you can choose who can Publish, Read, Edit and Delete content. You can choose permissions for posts, pages, custom content types, categories, tags, and more. [Click here for your quick start guide to PublishPress Capabilities](https://publishpress.com/knowledge-base/permissions-start/). ## #2. Capabilities for any Post Type ## Many WordPress users have sites with custom post types. This can be done using custom code, a theme, or with a plugin. No matter how your post type is created, PublishPress Capabilities lets you enforce and assign distinct capabilities for your post type. [Click here to see how to control post type permissions](https://publishpress.com/knowledge-base/custom-post-types-capability/). ## #3. Capabilities for any WordPress Taxonomy ## PublishPress Capabilities enables you to add extra permissions to the taxonomies on your site. This feature includes the default Categories and Tags, but also applies to other taxonomies. For example, in WooCommerce you can apply custom permissions to Product categories, Product tags, and Product shipping classes. You can enforce and assign "Manage", "Edit" and "Assign" distinct capabilities for all your taxonomies. [Click here to learn about taxonomy permissions](https://publishpress.com/knowledge-base/taxonomy-specific-capabilities/). ## #4. Hide Toolbar Link and Dashboard Widgets ## “Admin Features” allows you to hide features in the WordPress admin area and toolbar. You can decide what users see in your WordPress dashboard. You can use this option to hide all the links in the toolbar including "About WordPress", "Visit Site" and more. You can also hide dashboard widgets such as "At a Glance", "Quick Draft", and "WordPress Events and News". [Click here to learn about removing toolbar items and dashboard widgets](https://publishpress.com/knowledge-base/how-to-use-admin-features/). ## #5. Hide Gutenberg and Classic Editor Features ## PublishPress Capabilities has an option called "Editor Features" allows you to clean up the post editing screen. You can decide what users see when they're writing posts. You can hide anything on the Gutenberg or Classic Editor screens. You can hide boxes inside the sidebadd such Tags, Categories, or Excerpt. You can the "Publish" button. You can even hide the post title, body, or permalink. This is a great alternative to plugins such as Adminimize. [Click here to learn about hiding editor features](https://publishpress.com/knowledge-base/editor-features/). ## #6. Hide Metaboxes in WordPress Posts ## WordPress has a feature called “metaboxes”. This is a strange name, but you have seen them often if you use WordPress. When a user edits a post, the edit screen has several default boxes: Status & visibility, Featured image, Categories, Tags, etc. These boxes are metaboxes. Plugins can add also add their own metaboxes. The Pro version of the PublishPress Capabilities plugin allows you to hide metaboxes for specific user roles. [Click here to learn about hiding metaboxes](https://publishpress.com/knowledge-base/hide-metaboxes-in-wordpress-posts/). ## #7. Backup and Restore User Roles and Capabilities ## PublishPress Capabilities offers you the ability to back up and restore your permissions. This feature is very helpful if you want to test out changes on your site, or if you've installed a new plugin that has changed your site's permissions. Every time you change your permissions, the PublishPress Capabilities plugin will now automatically create a backup. If you make a mistake, go to the "Backup" menu link and you'll be able to roll back to a previous version. [Click here to see how to backup permissions](https://publishpress.com/knowledge-base/backup-restore-permissions/). ## #8. Create New User Roles or Copy User Roles ## With PublishPress Capabilities you can create or copy any existing WordPress user role. These roles can be customized in exactly the same way as the default WordPress roles. These new roles can be added to single sites or to an entire multisite network. [Click here to see how to create or copy user roles](https://publishpress.com/knowledge-base/create-or-copy-user-roles/). ## #9. Frontend Menu Restrictions (Pro version) ## PublishPress Capabilities enables you to restrict access to navigation menus by roles, logged in and logged out users. This is useful because a default WordPress site does not give you way to control the visibility of your links. [Click to see how to block frontend menu access](https://publishpress.com/knowledge-base/nav-menus/). ## #10. WordPress Admin Menu Restrictions (Pro version) ## With PublishPress Capabilities you can restrict access to admin menu screens by user roles. This is useful because many plugin do not have any way to control who can access their admin screens. [Click to see how to block Admin menu access](https://publishpress.com/knowledge-base/admin-menus/). ## #11. Support for Media Library Permissions ## PublishPress Capabilities enables you to decide who can upload, edit and delete files from your site's Media Library. By default, only Administrators are able to delete files in your Media Library. Subscribers and Contributors are not even allowed to upload files. You can customize these permissions for the Media Library and also the Featured Image box. [Click here to learn about Media Library permissions](https://publishpress.com/knowledge-base/control-media-library-access/). ## #12. Support for WooCommerce Permissions ## We mentioned earlier that PublishPress Capabilities has special support for WooCommerce taxonomies. This is true for the rest of WooCommerce also. With PublishPress Capabilities you can control permissions for WooCommerce products, orders and coupons. [Click here to learn about WooCommerce permissions](https://publishpress.com/knowledge-base/woocommerce-permissons/). ## #13. WordPress Multisite support ## PublishPress Capabilities allows you to control permissions on a single site or across your whole network. Every time you update permissions in PublishPress Capabilities, you can choose to sync those changes across your multisite network. [Click here to learn about multisite permissions](https://publishpress.com/knowledge-base/multisite-network/). ## Join PublishPress and get the Pro plugins ## The Pro versions of the PublishPress plugins are well worth your investment. The Pro versions have extra features and faster support. [Click here to join PublishPress](https://publishpress.com/pricing/). Join PublishPress and you'll get access to these Pro plugins: * [PublishPress Authors Pro](https://publishpress.com/authors) allows you to add multiple authors and guest authors to WordPress posts. * [PublishPress Blocks Pro](https://publishpress.com/blocks) has everything you need to build professional websites with the WordPress block editor. * [PublishPress Capabilities Pro](https://publishpress.com/capabilities) is the plugin to manage your WordPress user roles, permissions, and capabilities. * [PublishPress Checklists Pro](https://publishpress.com/checklists) enables you to define tasks that must be completed before content is published. * [PublishPress Permissions Pro](https://publishpress.com/permissions) is the plugin for advanced WordPress permissions. * [PublishPress Pro](https://publishpress.com/publishpress) is the plugin for managing and scheduling WordPress content. * [PublishPress Revisions Pro](https://publishpress.com/revisions) allows you to update your published pages with teamwork and precision. * [PublishPress Series Pro](https://publishpress.com/series) enables you to group content together into a series Together, these plugins are a suite of powerful publishing tools for WordPress. If you need to create a professional workflow in WordPress, with moderation, revisions, permissions and more... then you should try PublishPress. ## Bug Reports ## Bug reports for PublishPress Capabilities are welcomed in our [repository on GitHub](https://github.com/publishpress/publishpress-capabilities). Please note that GitHub is not a support forum, and that issues that aren't properly qualified as bugs will be closed. ## Follow the PublishPress team ## Follow PublishPress on [Facebook](https://www.facebook.com/publishpress), [Twitter](https://www.twitter.com/publishpresscom) and [YouTube](https://www.youtube.com/publishpress). == Frequently Asked Questions == = How do I Backup and Restore WordPress User Permissions? = PublishPress Capabilities is a user role editor that offers you the ability to backup and restore your WordPress user permissions. This feature is very helpful if you want to test out changes on your site, or you've installed a new plugin that has changed your site's permissions. Changing permissions in WordPress can be a tricky task. It's possible to lock yourself or others out of some important features. So, we've built a way to keep your site safe. Every time you change your permissions, the PublishPress Capabilities plugin will automatically create a backup. If you make a mistake, go to the “Backup” menu link and click the “Restore” tab. Here you can browse through the most recent 20 automatic backups. The plugin also saves a backup from you first installed PublishPress Capabilities. And you can click the “Backup” tab to manually create backups. Click the yellow “Restore Selected Roles” button and you'll be able to roll back to a previous version. Whenever you choose a backup, the plugin will show all the permissions in that backup. Important changes in permissions are highlighted: * A green role title means the role does not exist in your current set. * A green capability is set in the role backup, but not the current role. * A stuck-through capability is set in the current role, but not the role backup. = How Do I Restore Permissions to the WordPress Defaults? = If you really need to clean up and refresh your site, PublishPress Capabilities does allow you to restore the default WordPress permissions. Go to Capabilities > Backup and dlick the “Reset Roles” tab. Before you take next step, make sure to read this warning: “WARNING: This will delete and/or modify stored role definitions. If you have installed any plugin that adds new roles or capabilities, these will be lost. It is recommended to use this only as a last resort!” If you want to proceed, click the “Reset to WordPress defaults” link. PublishPress Capabilities will ask you if you're really sure you want to do this. Click “OK” to continue. Once the process is complete, you'll see the message, “Roles and Capabilities reset to WordPress defaults”. = How Do I Control WooCommerce Menu Link Permissions? = WooCommerce is the most popular WordPress eCommerce plugin. You can create beautiful store with themes customized to your brand and industry and you'll find 1,000's of tools and popular integrations. The PublishPress Capabilities plugin enables you to control permissions for the WooCommerce plugin and also WooCommerce user roles. You can use this plugin as a WooCommerce user role editor. Go to the “Capabilities” link in your WordPress admin menu. In the main area of your screen will see options for WooCommerce Products, Orders and Coupons. These permissions cover editing, deleting and reading. In the right sidebar, you can also enable permissions for WooCommerce taxonomies. Check the boxes for Product categories, Product tags, and Product shipping classes. After you check those boxes and refresh your screen, you will see Manager, Edit, Assign and Delete options for Product categories, Product tags, and Product shipping classes. The Pro version of PublishPress Capabilities allows you to block access to admin menu links in WooCommerce. This is useful because WooCommerce has very limited options for controlling who can access the admin screens. When you first install WooCommerce, you'll see four top-level menu links, plus sub-menus. All of these links are available to users in the Administrator and Shop Manager roles: * WooCommerce * Products * Analytics * Marketing It is possible to control who can access these links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. n the top-left corner of this screen, choose the role that you want to edit. Scroll down and you can enter a red X for any menu link that you don't want users in that role to access. This is a great way to customize a WooCommerce role such as Shop Manager. This approach works for the core WooCommerce plugin and can also be used for WooCommerce add-on plugins such as WooCommerce Subscriptions, WooCommerce Shipping, and WooCommerce Bookings. PublishPress Capabilities can help you manage WooCommerce permissisons. [Click here to learn about WooCommerce menu permissions](https://publishpress.com/knowledge-base/control-access-woocommerce-admin-menus/). = How Do I Control Contact Form 7 Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in the Contact Form 7 plugin. This is useful because Contact Form 7 has very limited options for controlling who can access the admin screens. Contact Form 7 is the most popular contact form plugin for WordPress. You can manage multiple contact forms, and easily customize each form and the emails it sends. Contact Form 7 supports Ajax-powered submitting, CAPTCHA, Akismet spam filtering and much more. When you first install Contact Form 7, you'll see one top-level menu link, plus three sub-menus. All of these links are available to users in the Administrator role: * Contact Forms * Add New * Integration It is possible to control who can access these links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. Scroll down and you can enter a red X for any menu link that you don't want users in the Editor role to access. This approach works for the core Contact Form 7 plugin and can also be used for add-on plugins such as Flamingo which records entries for Contact Form 7 forms. [Click here to learn about Contact Form 7 menu permissions](https://publishpress.com/knowledge-base/control-access-contact-form-7-admin-menus/). = How Do I Control Yoast SEO User Roles and Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in the Yoast SEO plugin. This is useful because Yoast SEO has limited options for managing who can access the admin screens and important features. Yoast SEO is the most popular WordPress SEO plugin and contains everything that you need to manage your SEO. Yoast SEO is packed full of feature that help search engines to find and understand your website. When you first install Yoast SEO, you'll see one top-level menu link, plus at least 5 sub-menus: * General * Search Appearance * Social * Tools * Premium It is possible to control who can access these Yoast SEO links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. For example, you can restrict Yoast SEO access for the “SEO Manager” role. Scroll down and you can enter a red X for any menu link that you don't want users in the SEO Manager role to access. This approach works for the core Yoast SEO plugin and can also be used for add-on plugins such as Local SEO, WooCommerce SEO, Google News, and more. [Click here to learn about Yoast SEO menu permissions](https://publishpress.com/knowledge-base/control-access-yoast-seo-admin-menus/). = How Do I Control Elementor User Roles and Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in the Elementor plugin. This is useful because Elementor has limited options for managing who can access the admin screens and important features. The Elementor plugin is one of the most popular drag-and-drop page builders. With Elementor, you’re editing the site live, and simultaneously see exactly how it looks like. Elementor designs are full-responsive and come with over 40 powerful widgets. PublishPress Capabilities can help you manage Elementor permissisons. When you first install Elementor, you'll see one top-level menu link, plus at least 9 sub-menus: * Settings * Role Manager * Tools * System Info * Getting Started * Get Help * Custom Fonts * Custom Icons * Go Pro It is possible to control who can access Elementor menu links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. For example, you can restrict Elementor access for the “Administrator” role. If you do this, I would recommend making a copy of the Administrator role so that one role still has full Elementor access. Scroll down and you can enter a red X for any Elementor menu link that you don't want users in the Administrator role to access. This approach works for the core Elementor plugin and can also be used for add-on plugins such as Essential Addons, Premium Addons, and others. [Click here to learn about Elementor menu permissions](https://publishpress.com/knowledge-base/control-access-elementor-admin-menus/). = How Do I Control Jetpack User Roles and Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in the Jetpack plugin. This is useful because Jetpack has limited options for managing who can access the admin screens and important features. Jetpack is a plugin built by Automattic, the company behind WordPress.com. This plugin offers many different services including backups, spam blocking, analytics, malware scans, contact forms, and more. PublishPress Capabilities can help you manage Jetpack permissisons. When you first install the Jetpack plugin, you'll see one top-level menu link, plus at least 2 sub-menus: * Dashboard * Settings It is possible to control who can access these Jetpack links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. For example, you can restrict Jetpack access for the “Administrator” role. If you do this, I would recommend making a copy of the Administrator role so that one role still has full Jetpack access. Scroll down and you can enter a red X for any Jetpack menu link that you don't want users in the Administrator role to access. Now when an Administrator logs in to your site, they will not be able to see the Jetpack menu links that you have blocked. This approach works for the core Jetpack plugin and can also be used for add-on plugins such as Jetpack CRM and others. [Click here to learn about Jetpack permissions](https://publishpress.com/knowledge-base/control-access-jetpack-admin-menus/). = How Do I Control WPForms User Roles and Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in the WP Forms plugin. This is useful because WPForms has limited options for managing who can access the admin screens and important features. WPForms is one of the most popular WordPress contact form plugin with millions of active installs. WPForms allows you to create beautiful contact forms, feedback forms, subscription forms, payment forms, and more. When you first install the WPForms plugin, you'll see one top-level menu link, plus at least 10 sub-menus: * All Forms * Add New * Entries * Settings * Tools * Addons * Analytics * SMTP * About Us * Community It is possible to control who can access these WPForms plugin links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. For example, you can restrict WPForms access for the “Administrator” role. If you do this, I would recommend making a copy of the Administrator role so that one role still has full WPForms access. Scroll down and you can enter a red X for any WPForms menu link that you don't want users in the Administrator role to access. Now when an Administrator logs in to your site, they will not be able to see the WPForms menu links that you have blocked. This approach works for the core WPForms plugin and can also be used for add-on plugins such as Form Abandonment, Form Locker, Offline Forms, and more. [Click here to learn about WPForms menu permissions](https://publishpress.com/knowledge-base/control-access-wpforms-admin-menus/). = How Do I Control The Events Calendar User Roles and Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in The Events Calendar plugin. This is useful because The Events Calendar has limited options for managing who can access the admin screens and important features. With The Events Calendar, you can easily create and manage an events calendar on your WordPress site. The plugin supports both in-person and virtual events. There are also many ways to extend the plugin for recurring events, ticket sales, user-submitted events and more. When you first install the The Events Calendar plugin, you'll see one top-level menu link, plus at least 10 sub-menus: * Events * Add New * Tag * Events Categories * Venues * Organizers * Import * Settings * Help * Event Add-Ons It is possible to control who can access these The Events Calendar plugin links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. For example, you can restrict The Events Calendar access for the “Editor” role. Scroll down and you can enter a red X for any The Events Calendar menu link that you don't want users in the Editor role to access. Now when an Administrator logs in to your site, they will not be able to see the Events Calendar menu links that you have blocked: This approach works for the core The Events Calendar plugin and can also be used for add-on plugins such as Virtual Events, Events Tickets, and more. [Click here to learn about The Events Calendar menu permissions](https://publishpress.com/knowledge-base/control-access-the-events-calendar-admin-menus/). = How Do I Control The Gravity Forms User Roles and Permissions? = The Pro version of PublishPress Capabilities allows you to block access to admin menu links in the Gravity Forms plugin. This is useful because Gravity Forms has limited options for controlling who can access the admin screens. Gravity Forms is perhaps the most popular contact form plugin for WordPress. You can build and publish your WordPress forms in just minutes. Choose your fields, configure your options and easily embed forms on your WordPress-powered site. Gravity Forms allows you to easily integrate with third party services such as PayPal, Mailchimp, and Zapier. When you first install Gravity Forms, you'll see one top-level menu link, plus eight sub-menus. * Forms * New Form * Entries * Settings * Import/Export * Add-ons * System Status * Help It is possible to control who can access these links by using the PublishPress Capabilities Pro plugin. After installing PublishPress Capabilities Pro, go to “Capabilities”, then “Admin Menus” in your WordPress admin area. In the top-left corner of this screen, choose the role that you want to edit. For example, you can restrict access for the “Editor” role. By default, Editors aren't given access to Gravity Forms, but site administrators often do they give them some access. Scroll down and you can enter a red X for any Gravity Forms menu link that you don't want users in the Editor role to access. Now when an Editor logs in to your site, they will not be able to see the blocked Gravity Forms menu links. This approach works for the core Gravity Forms plugin and can also be used for add-on plugins from the official site, or third-party sites. [Click here to learn about Gravity Forms menu permissions](https://publishpress.com/knowledge-base/control-access-gravity-forms-admin-menus/). = What’s the Difference Between PublishPress Capabilities and PublishPress Permissions? = We provide two plugins that allow you to control who can access what on your WordPress site. This is simple way to understand the difference: * PublishPress Capabilities: Easy. * PublishPress Permissions: Advanced. OK, that's maybe too simple, so here's more detail: * PublishPress Permissions allows you to customize the default WordPress permissions. * PublishPress Permissions allows you to customize advanced permissions that go far beyond the scope of the WordPress core. Here's an contrasting example when it comes to Post: * PublishPress Capabilities allows you to control who can publish all your Posts. * PublishPress Permissions allows you to control who can publish Posts with a particular Status, Category or Tag, or even Posts without a specific Category or Tag. Here's another comparison: * PublishPress Capabilities allows you to control who can read all your Pages. * PublishPress Permissions allows you to control who can read Pages with a specific Status, Category or Tag, or even Pages with a particular parent Page. = What's the correct way to spell PublishPress Capabilities? = PublishPress is the official brandname. When writing about this user role editor plugin, please make sure to uppercase the Ps. * PublishPress Capabilities (correct) * Publish Press Capabilities (incorrect) * publishpress capabilities (incorrect) * publish press cpabilities (incorrect) Common and incorrect typos include Capabilitise, Cpabilities, Capabiliites, Cspabilities, Capsbilities, Caoabilities, Calabilities. == Screenshots == 1. Control user permissions: You can customize all the user roles on your site, from Administrator to Subscriber. 2. Create and copy user roles: With PublishPress Capabilities you can create or copy any existing WordPress user role. 3. Content permissions: With Capabilities, you can choose who can Publish, Read, Edit and Delete content. 4. Multi-site support: Capabilities can control permissions on a single site or across your whole network. 5. Custom Statuses: With Capabilities Pro, you can decide which user roles are able to send posts to each status. 6. Enforce Taxonomy-Specific Capabilities: You can give “Manage”, “Edit” and “Assign” permissions for all your taxonomies. 7. Permission backups: Every time you change your permissions, the PublishPress Capabilities plugin will automatically create a backup. 8. Media Library Permissions: PublishPress Capabilities enables you to decide who can upload, edit and delete files from your site’s Media Library. 9. WooCommerce Permissions: With PublishPress Capabilities you can control permissions for WooCommerce products, orders and coupons. 10. Navigation Menu Restrictions: PublishPress Capabilities enables you to restrict access to navigation menus by roles, logged in and logged out users. 11. Admin Menu Restrictions: With PublishPress Capabilities you can restrict access to admin menu screens by user roles. 12. Editor Feature Restriction: PublishPress Capabilities enables you to decide what users see when they're writing posts. 13. Admin Feature Restriction: PublishPress Capabilities enables you remove items from the WordPress toolbar, plus dashboard widgets. == Upgrade Notice == = 1.5.1 = Fixed : Non-administrators with user editing capabilities could add new Administrators = 2.3.1 = Fixed : Security issue. Please update. == Changelog == = 2.3.4 - 26 Jan 2022 = * Compat : WordPress 5.9 - failure adding / editing posts under some Editor Features configurations (work around WP hooking late-defined function _disable_block_editor_for_navigation_post_type) = 2.3.3 - 13 Jan 2022 = * Fixed : Capability names with dashes could not be added * Fixed : After role rename, title in dropdown does not refresh * Fixed : Input sanitization consistency * Fixed : Escape output variables * Lang : Spanish, French, Italian = 2.3.2 - 8 Dec 2021 = * Feature : Filter Capabilities display by post type or text entry * Feature : Editor Features - Restrict editor elements for custom post types * Feature : Admin Features - Restrict Admin Bar or individual Admin Bar elements * Feature : Admin Features - More items available for restriction #240 * Change : Admin Features - Captions use dashes, not numbers #229 * Change : Capabilities screen - Tab for PublishPress Capabilities #220 * Fixed : CSRF vulnerability = 2.3.1 - 6 Dec 2021 = * Fixed : Security issue * Fixed : PHP Notice on Capabilities screen = 2.3 - 28 Oct 2021 = * Change : Role Capabilities screen uses tabs * Feature : New "Admin Features" screen #200 = 2.2 - 26 Aug 2021 = * Feature : Retain last role selection for Capabilities, Editor Features screens * Perf : Sync role to all sites - Operation timed out on networks with ~100 sites * Fixed : Some security scans flagged an unused file in external library "chosen". That file (and other developer documentation files) has been removed = 2.1 - 24 Jun 2021 = * Feature : Editor Features restriction (new screen to block editor elements per-role) * Fixed : If Media "Create" capability is selected / unselected by clicking Media caption or Create caption, the corresponding upload_files checkbox (in Other WP Core Capabilities section) is not toggled, leading to an apparant update failure * Fixed : If Media "Create" capability is negated or un-negated, the corresponding upload_files checkbox (in Other WP Core Capabilities section) is not toggled, leading to an apparant update failure * Fixed : PHP Warning if a role is stored without a valid capabilities array = 2.0.2 - 6 May 2021 = * Feature : Multisite - "sync options to all sites" checkbox. Copies "use create_posts capability", Type-Specific Capabilities, Taxonomy-Specific Capabilities, Detailed Taxonomy Capabilities settings * Fixed : Multisite - "sync role to all sites" did not work if main site ID is not 1 * Fixed : Fatal error on Capabilities screen if another plugin calls get_editable_roles() too early * Fixed : Add New User - couldn't display password entry * Compat : PublishPress - Authors without publish capability could directly publish on the Calendar screen * Change : Permissions - Hide / Unhide Role setting moved to Roles screen row actions = 2.0 - 18 Feb 2021 = * Feature : Roles screen * Feature : Multiple role assignment on Add / Edit User screen * Lang : Fixed handling, activated partial translations in German, Italian, Russian, Spanish, Swedish, Belarusian, Catalan * Change : Capabilities screen - move role selector to top left, eliminate load button * Change : Capabilities screen - move some sidebar items to Settings screen * Change : Adjust some captions, variable names, more selective code execution * Compat : bbPress - Forum, Topic and Reply capabilities were not displayed in Editing Capabilities grid * Fixed : uneditable bbPress roles could be opened for editing (require Capabilities Pro) * Fixed : Invalid Capabilities - Brief explanatory caption; avoid false positives for post types with map_meta_cap disabled * Fixed : PHP warning for invalid foreach argument, on sites with no active_plugins option stored * Fixed : Backup > Restore - Negated capabilities were not displayed correctly in restore preview * Fixed : Backup > Restore - Clicking label for Initial Backup jumped selection to Last Manual Backup * Change : Backup > Restore - Preview displays "No changes" below role name where appropriate = 1.10.1 - 8 Oct 2020 = * Fixed : Type-Specific Capabilities options included some non-public WordPress post types that don't support capability customization * Fixed : Review of role backup contents does not show name of current roles which would be removed by restoring backup = 1.10 - 1 Oct 2020 = * Feature : Improved design and styling for Backup and Restore * Feature : Backup > Restore - filter to display only modified capabilities * Compat : Advanced Gutenberg - include AG Profile capabilities in Editing, Deletion, Reading capabilities grid * Fixed : Media Create / upload_files capability could not be removed from role * Fixed : Multisite - Incorrect menu display on sites where main site ID is not 1 * Fixed : Language file load failure if plugin directory structure is non-standard = 1.9.12 - 16 Jun 2020 = * Fixed : Fatal error due to missing vendor library folder = 1.9.11 - 16 Jun 2020 = * Fixed : Upgrade menu links were not displayed = 1.9.10 - 1 Jun 2020 = * Fixed : PublishPress Permissions - Type / Taxonomy settings incorrectly synchronized under some conditions = 1.9.9 - 13 May 2020 = * Compat : PublishPress Permissions - "Type-Specific Capabilities" setting was not properly synchronized with Permissions > Settings > Core > Filtered Post Types = 1.9.6 - 23 Apr 2020 = * Change : Add New Role retains capitalization as entered for role title (otherwise applies proper case) * Feature : Rename Role sidebar box on Capabilities screen * Fixed : Fatal error on plugin load if Administrator role does not exist * Compat : PublishPress Permissions - Post Type selections for "Type-Specific Capabilities" were not synchronized with PublishPress Permissions under some conditions = 1.9.5 - 6 Apr 2020 = * Fixed : Fatal error loading Capabilities screen on a small percentage of installations * Compat : PublishPress Permissions - Post Type selections for "Type-Specific Capabilities" were not synchronized with PublishPress Permissions under some conditions = 1.9.4 - 2 Apr 2020 = * Fixed : Fatal error loading Capabilities screen on a small percentage of installations * Fixed : Capabilities menu was displayed to non-Administrators with no items except "Upgrade to Pro" = 1.9.3 - 17 Mar 2020 = * Fixed : Capabilities screen was not accessible to non-Administrators who have "manage_capabilities" capability * Fixed : Some functions were not accessible to network Super Administrators without a role on the site * Change : Clarify some messages for plugin access denial = 1.9.2 - 16 Mar 2020 = * Feature : Auto-backup role and capabilities on each update (and on update to this version) * Fixed : First-time installation: Capabilities menu item not displayed until after Plugins or Users menu clicked * Change : Third Party Plugin Capabilities - always display checkboxes even if capabilities not present in Administrator role * Fixed : Plugin capability sections - pp_set_notification_channel and pp_manage_roles were included in both PublishPress and PublishPress Permissions sections * Fixed : Capability Negation (Denial) bulk unselect link was ambiguous due to missing strikethrough = 1.9.1 - 16 Jan 2020 = * Fixed : Create Role, Copy Role, and Add Capability sidebar functions did not work with ENTER keypress (caused screen reload without applying operation) = 1.9 - 9 Jan 2020 = * Change : Renamed to PublishPress Capabilities * Feature : Capabilities link on PublishPress > Roles row opens Role Capabilities screen * Feature : Role Capabilities screen links to PublishPress > Roles for member management * Fixed : Browser reload caused Role Capabilities screen to display default role * Fixed : Add Capability sidebar added custom capability to role immediately, but capability checkbox did not display as checked until reload * Fixed : Category Assign or Delete capabilities were not effective due to WordPress core forcing default capability requirement * Fixed : Term Assign or Delete capabilities were not effective due to WordPress core forcing default capability requirement * Fixed : Multisite - On sub-sites, Role Capabilities screen did not display PublishPress Capabilities section to Super Administrators who don't have a role on the site * Fixed : Role name captions on Role Capabilities and Backup Tool screens could not be translated * Fixed : Checkbox bulk selection on Role Capabilities screen was incorrect under some conditions * Change : Reinstate WordPress edit_published_posts workaround with correct status filtering behavior * Change : Apply workaround filters for WordPress edit_published_posts / publish_posts handling only for users who have edit_published_posts capability for current post type = 1.8.1 - 25 Oct 2019 = * Fixed : Automatic publication of blank auto-drafts, WooCommerce posts save with incorrect post status (since 1.8) = 1.8 - 24 Oct 2019 = * Feature : WooCommerce, PublishPress, PressPermit capabilities grouped in sections on role editor screen * Feature : Plugin API - plugins can hook into "cme_plugin_capabilities" filter to register their capabilities * Feature : Work around WordPress issue preventing users with edit_published_posts (but not publish_posts) capability from updating published posts (https://core.trac.wordpress.org/ticket/47443) * Feature : Work around WordPress issue allowing users with edit_published_posts (but not publish_posts) to unpublish published posts * Fixed : If a unique edit/delete capability is already defined, don't change the definition * Fixed : Removed add_users from the Core WordPress Capabilities section because it is was replaced by promote_users * Fixed : PHP Notices on Role Capabilities screen for undefined index, under some configurations * Fixed : HTML validation errors on Manage Capabilities screen * Fixed : PHP 5.x : Notice for undefined constant PHP_INT_MIN on wp-admin Posts / Pages listing * Change : Move Role Capabilities menu item to Permissions menu if PressPermit plugin is active (restoring previous behavior with Press Permit Core) * Change : Edit Roles link in CME row of Plugins list * Change : PublishPress icon, footer on Roles and Capabilities screen = 1.7.5 - 24 May 2019 = * Fixed : Users' inclusion or non-inclusion in Authors dropdown was not updated based on role edit = 1.7.4 - 1 May 2019 = * Fixed : On some sites, capabilities added dynamically by other code were forced into stored role definition (and could not be removed). * Fixed : Negative role capabilities could not be directly unset (had to be checked, saved, then unchecked). = 1.7.3 - 9 Apr 2019 = * Fixed : Work around WP quirk of completely blocking admin page access for a post type if user lacks create capability for the post type and there are no other accessible items on the menu. * Fixed : PHP Notices on Roles and Capabilities screen for non-Administrator with WooCommerce active = 1.7.2 - 3 Apr 2019 = * Compat : WooCommerce integration - Users lacking access to the "Add New Order" submenu could not access Posts, Pages, Products or any other Post Type listing. This occurred if "use create_posts" option enabled and user lacks the create capability for Orders. = 1.7.1 - 29 Mar 2019 = * Fixed : Press Permit integration - cannot load Permissions > Role Capabilities with Press Permit Core < 2.7 = 1.7 - 28 Mar 2019 = * Feature : New right sidebar setting: "Type-Specific Capabilities" for selected post types (without activating Press Permit Core). * Feature : New right sidebar setting: "Taxonomy-Specific Capabilities" ensures a distinct manage capability for selected taxonomies * Feature : New right sidebar setting: "Detailed Taxonomy Capabilities" causes term assign, edit and deletion capabilities to be required and credited separate from management capability * Feature : WooCommerce - Ensure orders can be edited or added based on edit_shop_orders / create_shop_orders capability * Change : Lockout safeguard (preventing read capability removal) is bypassed if role has no WP admin / edit capabilities, or if it has "dashboard_lockout_ok" capability * Compat : Press Permit: new plugin page slugs in Press Permit Core 2.7 = 1.6.1 = * Feature : Prevent read capability from being removed from a standard role * Feature : If read capability is missing from a standard role, display warning and instant fix link * Feature : Additional save button at top of Roles and Capabilities screen! * Change : Reinstate Press Permit description link * Change : Thickbox popups for related plugins = 1.6 = * Feature : WooCommerce - If current user has duplicate_products capability, make Woo honor it * Feature : Link to Backup Tool from sidebar of Roles and Capabilities screen * Feature : Link to Roles and Capabilities screen from Backup Tool * Change : Minor code cleanup and refactor * Change : Copyrights, onscreen link for PublishPress ownership * Change : Links to Related Permissions Plugins in sidebar on Roles and Capabilities screen = 1.5.11 = * Feature : Automatically save backup of WP roles on plugin activation or update * Feature : When roles are manually backed up, also retain initial role backup * Feature : Backup Tool can also display contents of role backups = 1.5.10 = * Fixed : Back button caused mismatching role dropdown selection * Compat : PHP 7.2 - warning for deprecated function if a second copy of CME is activated = 1.5.9 = * Fixed : Potential vulnerability in wp-admin (but exposure was only to users with role editing capability) = 1.5.8 = * Fixed : PHP warning for deprecated function WP_Roles::reinit * Change : Don't allow non-Administrator to edit Administrators, even if Administrator role level is set to 0 = 1.5.7 = * Change : Revert menu captions to previous behavior ("Permissions > Role Capabilities" if Press Permit Core is active, otherwise "Users > Capabilities") = 1.5.6 = * Fixed : Correct some irregularities in CME admin menu item display = 1.5.5 = * Fixed : User editing was improperly blocked in some cases = 1.5.4 = * Fixed : Non-administrators' user editing capabilities were blocked if Press Permit Core was also active * Fixed : Non-administrators could not edit other users with their role (define constant CME_LEGACY_USER_EDIT_FILTER to retain previous behavior) * Fixed : Non-administrators could not assign their role to other users (define constant CME_LEGACY_USER_EDIT_FILTER to retain previous behavior) * Lang : Changed text domain for language pack conformance = 1.5.3 = * Fixed : On single-site installations, non-Administrators with delete_users capability could give new users an Administrator role (since 1.5.2) * Fixed : Deletion of a third party plugin role could cause users to be demoted to Subscriber inappropriately * Compat : Press Permit Core - Permission Group refresh was not triggered if Press Permit Core is inactive when CME deletes a role definition * Compat : Support third party display of available capabilities via capsman_get_capabilities or members_get_capabilities filter * Change : If user_level of Administrator role was cleared, non-Administrators with user editing capabilities could create/edit/delete Administrators. Administrator role is now implicitly treated as level 10. * Fixed : CSS caused formatting issues around wp-admin Update button on some installations * Perf : Don't output wp-admin CSS on non-CME screens * Lang : Fixed erroneous text_domain argument for numerous strings * Lang : Updated .pot and .po files = 1.5.2 = * Fixed : Network Super Administrators without an Administrator role on a particular site could not assign an Administrator role to other users of that site = 1.5.1 = * Fixed : Non-administrators with user editing capabilities could give new users a role with a higher level than their own (including Administrator) = 1.5 = * Feature : Support negative capabilities (storage to wp_roles array with false value) * Feature : Multisite - Copy a role definition to all current sites on a network * Feature : Multisite - Copy a role definition to new (future) sites on a network * Feature : Backup / Restore tool requires "restore_roles" capability or super admin status * Fixed : Role reset to WP defaults did not work, caused a PHP error / white screen * Change : Clarified English captions on Backup Tool screen * Fixed : Term deletion capability was not included in taxonomies grid even if defined * Fixed : jQuery notices for deprecated methods on Edit Role screen * Compat : Press Permit - if a role is marked as hidden, also default it for use by PP Pro as a Pattern Role (when PP Collaborative Editing is activated and Advanced Settings enabled) * Change : Press Permit promotional message includes link to display further info = 1.4.10 = * Perf : Eliminated unused framework code (reduced typical wp-admin memory usage by 0.6 MB) * Fixed : Failure to save capability changes, on some versions of PHP * Compat : Press Permit - PHP Warning on role save * Compat : Press Permit - PHP Warning on "Force Type-Specific Capabilities" settings update * Compat : Press Permit - "supplemental only" option stored redundant entries * Compat : Press Permit - green background around capabilities which * Compat : Press Permit - PHP Warning on "Force Type-Specific Capabilities" settings update * Maint : Stop using $GLOBALS superglobal * Change : Reduced download size by moving screenshots to assets folder of project folder = 1.4.9 = * Fixed : Role capabilities were not updated / refreshed properly on multisite installations * Feature : If create_posts capabilities are defined, organize checkboxes into a column alongside edit_posts * Feature : "Use create_posts capability" checkbox in sidebar auto-defines create_posts capabilities (requires Press Permit) * Compat : bbPress + Press Permit - Modified bbPress role capabilities were not redisplayed following save, required reload * Compat : bbPress + Press Permit - Adding a capability via the "Add Cap" textbox caused the checkbox to be available but not selected * Compat : Press Permit - "supplemental only" option was always enabled for newly created and copied roles, regardless of checkbox setting near Create/Copy button = 1.4.8 = * Compat : bbPress + Press Permit - "Add Capability" form failed when used on a bbPress role, caused creation of an invalid role = 1.4.7 = * Compat : Press Permit - flagging of roles as "supplemental assignment only" was not saved = 1.4.6 = * Compat : bbPress 2.2 (supports customization of dynamic forum role capabilities) * Compat : Press Permit + bbPress - customized role capabilities were not properly maintained on bbPress activation / deactivation, in some scenarios * Fixed : Role update and copy failed if currently stored capability array is corrupted = 1.4.5 = * Fixed : Capabilities were needlessly re-saved on role load * Fixed : Capability labels in "Other WordPress" section did not toggle checkbox selection * Press Permit integration: If capability is granted by the role's Permit Group, highlight it as green with a descriptive caption title, but leave checkbox enabled for display/editing of role defintion setting (previous behavior caused capability to be stripped out of WP role definition under some PP configurations) = 1.4.4 = * Fixed : On translated sites, roles could not be edited * Fixed : Menu item change to "Role Capabilities" broke existing translations = 1.4.3 = * Fixed : Separate checkbox was displayed for cap->edit_published_posts even if it was defined to the be same as cap->edit_posts * Press Permit integration: automatically store a backup copy of each role's last saved capability set so they can be reinstated if necessary (currently for bbPress) = 1.4.2 = * Language: updated .pot file * Press Permit integration: roles can be marked for supplemental assignment only (and suppressed from WP role assignment dropdown, requires PP 1.0-beta1.4) = 1.4.1 = * https compatibility: use content_url(), plugins_url() * Press Permit integration: if role definitions are reset to WP defaults, also repopulate PP capabilities (pp_manage_settings, etc.) = 1.4 = * Organized capabilities UI by post type and operation * Editing UI separates WP core capabilities and 3rd party capabilities * Clarified sidebar captions * Don't allow a non-Administrator to add or remove a capability they don't have * Fixed : PHP Warnings for unchecked capabilities * Press Permit integration: externally (dis)enable Post Types, Taxonomies for PP filtering (which forces type-specific capability definitions) * Show capabilities which Press Permit adds to the role by supplemental type-specific role assignment * Reduce memory usage by loading framework and plugin code only when needed = 1.3.2 = * Added Swedish translation. = 1.3.1 = * Fixed a bug where administrators could not create or manage other administrators. = 1.3 = * Cannot edit users with more capabilities than current user. * Cannot assign to users a role with more capabilities than current user. * Solved an incompatibility with Chameleon theme. * Migrated to the new Alkivia Framework. * Changed license to GPL version 2. = 1.2.5 = * Tested up to WP 2.9.1. = 1.2.4 = * Added Italian translation. = 1.2.3 = * Added German and Belorussian translations. = 1.2.2 = * Added Russian translation. = 1.2.1 = * Coding Standards. * Corrected internal links. * Updated Framework. = 1.2 = * Added backup/restore tool. = 1.1 = * Role deletion added. = 1.0.1 = * Some code improvements. * Updated Alkivia Framework. = 1.0 = * First public version.