Version 2.12 – Editable Roles, Separator Customization, and Bug Fixes

This version adds a couple of new features to the menu editor and role editor modules. It also fixes a number of plugin conflicts and compatibility issues.

This release adds a number of settings that let you customize the appearance of admin menu separators. You can change:

  • Color
  • Line style (e.g. solid, dashed, etc)
  • Width and height
  • Margins
  • Horizontal alignment

You can apply different styles to top level and submenu separators, or use the same settings for both types of menu separators. To access separator settings, click the “Separators” button in on the right side of the menu editor.

Separator settings dialog added in version 2.12

“Editable Roles” Settings

By default, when you give a role or user the ability to edit other users, WordPress will let them edit all users and they will be able to assign any role to anyone. This can be a problem if you want to have multiple roles that can edit users but you don’t want them to have the ability to give the “Administrator” role (or equivalent) to anyone they want.

One way to avoid that problem is to use the new “Editable Roles” feature introduced in version 2.12. This feature lets you control which roles someone can assign to other users. Additionally, it prevents people from editing users that have a non-editable role. For example, if you have a custom role that can edit other users, you could use this feature to prevent that role from editing administrators.

Screenshot of the Editable Roles dialog that was added in version 2.12

The default setting is “Automatic”. When a user with role A tries to do something with role B (e.g. they try to assign role B to another user), the plugin will compare the capabilities of A and B to automatically determine if the user is allowed to do that. In general, role A will be able to edit/assign role B only if role B has the same or fewer capabilities as role A. For example, if you give the “Editor” role permission to edit users, they will not be able to assign the “Administrator” role to anyone because “Administrator” has more capabilities than “Editor”.

Assign Multiple Roles to Users

Version 2.12 adds a new panel to the “Roles” tab that lets you change a user’s role without having to go to their profile. You can also assign multiple roles to one user. When you check or uncheck a role, you can immediately see how it affects user capabilities.

Screenshot of the new settings panel added in version 2.12 that lets you set the user role and assign multiple roles to one user

Notable Bug Fixes

Fixed a crash caused by invalid capabilities

Normally, a role capability is a keyword or short phrase like read, edit_posts or manage_options. In other words, it’s text. However, there are some plugins that incorrectly use non-textual values in place of regular capabilities. For example, there is at least one plugin that uses false (the boolean value, not the word) when setting the capabilities of a custom post type.

Originally, Admin Menu Editor Pro couldn’t handle invalid capabilities. The “Roles” tab would crash and just display a blank page, making it impossible to edit role capabilities. Version 2.12 fixes that by detecting invalid capabilities and displaying them as such. Now you will be able to use the settings in the “Roles” tab even if some capabilities are of the wrong data type.

Fixed a bug that sometimes made it impossible to give capabilities to new/custom roles

Due to an oversight in the initial release of the “Roles” feature, it was not possible to add capabilities to roles that didn’t already have at least one capability. For example, if you created a new role and didn’t give it any initial capabilities, you would not be able to assign capabilities to that role later. Version 2.12 fixes this bug.

This plugin uses a third-party JavaScript library called “jquery-cookie” to set cookies in the browser. It mainly uses cookies to remember interface settings, like which panels or boxes are open/closed. Some other plugins use different, incompatible versions of the same library. If one of those plugins loads its version of “jquery-cookie” on an Admin Menu Editor Pro settings page, this could cause a conflict and break Admin Menu Editor Pro in subtle and unexpected ways.

This has been fixed in version 2.12. Now AME should continue to work fine even if another plugin (or theme) loads an incompatible version of “jquery-cookie”.

Fixed hidden plugins showing up in various places

As of this release, hidden plugins will no longer show up under “Dashboard -> Updates”. They also won’t be included in the number of updates show in the admin menu, the Toolbar (a.k.a Admin Bar), and other places.

Fixed minor WP 5.5 compatibility issues

The upcoming WordPress release includes some small changes to the layout of admin dashboard widgets and meta boxes. Previous versions of this plugin were not fully compatible with these changes, which meant that some of the widgets and boxes shown on Admin Menu Editor Pro settings pages would display incorrectly (though they would still work fine). Version 2.12 fixes that problem.

See the full list of changes in the changelog.

Comments are closed.