The WP-Members Advanced Options version 2.2.0 upgrade has been released. This update includes some new features and will expand on those in future versions.
New Admin Panel
The first thing you’ll notice when you upgrade is that the admin panel was improved to use the RocketGeek jQuery Tabs library. This library is being incorporated into WP-Members as well as all of the extensions that have multi-screen admin panels. (Incidentally, it is an available open source library that is available for other projects on github.)
When using WP-Members with membership products enabled, the Advanced Options setting for redirecting a user to the login page adds additional logic to handle logged in users who do not have the appropriate product access. This will redirect the user to the login page with a message that indicates they do not have access to that membership.
When blocked content is redirected to the login page, the login failed message has been updated to include the redirect_to parameter so that the user is ultimately redirected back to the originally requested content.
The plugin has been localized for translation and includes a .pot template. (If you translate the plugin, please let me know so we can include it in future updates for you.)
A new option in the WP-Members defaults was added to include a WP-Members item in the WP toolbar (or “admin bar”). This includes a link to the Users > All Users page, a search to search for a user, and a link to the plugin settings. If the PayPal extension is installed, it includes a link to the Users > All Users filter for subscribers, and if moderated registration is enabled, it includes a link to the filter for pending users. My plan is to expand this in a future version to also include the ability to apply custom elements to the toolbar specific to your own setup.
There were also some code and structural improvements. The entire plugin was updated to change from using
wp_redirect() replacing it with
wp_safe_redirect(). This should be unnoticeable, but applies a security improvement to prevent malicious redirects.
All plugin code underwent review and was updated to the latest standard structure that I am implementing across all of the extensions. This included an update to the plugin’s updates API (which upgrades the plugin when updates are available).