Skip Navigation

Toolset Access 2.0
Released on:

Welcome to Access 2.0, AKA Access Granted.

Integration with the shared Toolset menu and export/import page

Access 2.0 is integrated in the new Toolset shared menu. It should appear just after the Types admin pages, as the Access Control entry.

Integration with the shared Toolset menu
Integration with the shared Toolset menu

We also moved the export/import page for Access to the shared Toolset page:

Export/import page
Export/import page

This new location for exporting and importing comes with another little update. From now on, importing messages are displayed as native admin notices.

As a final note, we also removed the Help page. We will be adding specific promotional and help instructions in coming iterations.

New Access Control page

Access 2.0 also packs a revamped Access Control page.

One of the ugliest problems we faced with the old Access Control page is that it contained too many checkboxes. When your site has many custom post types or custom taxonomies, or has too many custom groups or language groups, or custom field groups, the admin page can have a huge amount of checkboxes. As all settings were saved at once, you could reach the maximum limit that PHP can handle, hence saving partial settings and becoming unable to completely set some of them.

We did two things to improve this.

First, we moved to a section saving mechanism. Each set of checkboxes, be it for controlling access to a post type, taxonomy or group has been decoupled, and we added a dedicated Save button  That means that you will be able to save just those settings and will never suffer from a problem because you have too many sections.

Saving mechanism available in sections
Saving mechanism available in sections

Second, we moved to a tabbed interface, where you can access directly to the relevant settings without scrolling endlessly. We added tabs for post types, taxonomies, custom fields, post groups, WPML groups (if WPML is available) and custom roles.

Tabbed interface
Tabbed interface

Note that when first loading the Access Control page, only the first tab is fully loaded. Switching to another tab will trigger an AJAX call and the new tab content will be filled on-the-fly. This way you only load the settings that you actually want to see or edit. Also note that each tab is itself a link with the proper URL pointing to the appropriate tab, so you can reference and link to specific tabs.

In addition, each section inside any tab (but the Custom roles one), is loaded collapsed, with an indicator to whether it is controlled by Access or not. Clicking the row will open the settings container, where you can enable or disable Access control, change settings, etc.

Settings organized as collapsible  sections
Settings organized as collapsible sections

In future iterations we will improve the feedback when saving a group. By now, the group itself flashes in green.

Regarding Custom Roles, we also improved the management by adding AJAX refresh. You can see it when adding a new role, or editing or removing an existing one, or when enabling or disabling the advanced mode. Everything is saved and the new settings are applied without a page reload.

As a final note, we removed lots of code that was executed here. We lost some small feature, like the links to the custom groups that contain posts of a given type which was replaced by a generic link that loads the Custom Groups tab:

New, unified messages
New, unified messages

Finally, we unified the messages shown in some tabs when no there is no content to display.

Review the order of execution of the initialization hooks

We have had problems with specific post types (like posts or pages) or with specific user roles (like guests) for some time. We also had some compatibility issues with WPML and bbPress. They all, named as bugs below, are related to the same thing.

Access hooks into the native system of actions and filters that WordPress provides. It needs to initialize some things too early, listen to some events – and add those listeners early enough to catch them every time they are fired, but not too early to avoid bad practices – and apply tons of settings as soon as possible.

We had a hard time getting this right, but we do think we did it finally.

Transform the dialog to insert the Access shortcode into an actual dialog

Access provides a nice shortcode to set chunks of content that can or cannot be seen by specific roles.

The dialog to insert such shortcode was not an actual dialog, but a hidden container that switched its visibility based on the click on the toolbar button. But from now on, it will be a proper dialog. It also has some extra styling.

The dialog for inserting Access shortcode
The dialog for inserting Access shortcode

In future iterations we will improve this styling and also bring this button and dialog to other editors and the Toolset shortcodes admin bar menu.

Removed some WPML dependencies by using their API instead

That is: we removed some checks and direct calls against WPML functions and replaced them with the hooks system that WPML provides. Still, this is a work in progress.


  • Fixed a problem with native post types settings.
    As stated above, there was an issue here, and we solved it. Props to us!
  • Fixed problems with guest users and frontend permissions.
    As stated above, there were some problems here that should not be there anymore.
  • Fixed a problem on the import process.
    When exporting the Access settings just after activating the plugin, some of the groups of data are empty. Trying to import them raised some PHP notices and errors. We checked why and where, and fixed this.

Download and Update

You can get this release directly to the WordPress admin or download and install manually. To receive automatic updates, you need to register the Toolset plugins on your site. Then, visit the Plugins or Updates admin pages. To download manually, visit your Toolset Account and go to Downloads. Follow the installation and upgrade instructions for complete details.

When you update the Toolset plugins, be sure to update together all the components that you are using. Don’t use a mixture of new and older versions.

Feedback? Need Help?

We love feedback. To make a suggestion, ask a question or give an idea, leave your comment here. If you need technical support and help troubleshooting problems, please use our technical support forum.

a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>