WP-Members 3.3 is now in official development. You can keep up with the development process via the Development Repository on Github.
Version 3.3 will bring some important changes that have been pending for awhile. There have been some pending features that both I and members of the user community have wanted to see brought into the plugin and some of these may break past functionality. I usually try to keep things very backward compatible, so I figured that if we are going to “upset the apple cart,” then it’s probably best to do as much of it all at the same time, so users only have to do a major site audit one time.
Here are some of the current changes being brought into the plugin
- [wp-members] shortcode tag is now fully obsolete. It is removed in 3.3 so it will no longer function. This tag was deprecated over 3 years ago, so if you are still using it anywhere on your site, replace it with the appropriate tag.
- Filter hooks with a “_args” stem will be deprecated. There will be a replacement, tentatively with a “_settings” stem. (UPDATE: _args replacements will have a “_defaults” stem in the alpha releases – final nomenclature is still tentative and TBD.) The primary difference will be that the _args filters do not pass anything to the filter – they only receive any changes. This means they cannot be “stacked”. In other words, you can only use one instance of the filter. While the _args filters will remain functional for the time being (to provide backwards compatibility), you will likely want to begin the process of changing to the newer hooks once the production version is released. Note that the development repo has only started to implement this and may be subject to change.
- Adding support for selecting fields to display on the register form or the profile form (or both). This has been a long time coming and is probably the #1 feature request I get. You’ll be able to set this on the Fields Tab table. Note that my intention for the initial release will be backwards compatible so any field selected for “Display” under the current settings will display on both the register form and the profile form. Once you set it yourself and update the settings, it will go with your current settings. Also note that if you remove fields from one or the other form via filters, this setting will not affect any of those customizations. They should remain compatible (although if you use a custom filter only to remove certain fields, you may wish to replace those filters by using the new settings).
- Updating the block function to accept a post ID. Previously, the block function was not really a user API function. It just checked if the current post should be blocked or not. But there are beginning to be customizations that need to know if a requested post is blocked. So I’ve added an API function to accept a post ID to tell you if any requested post is blocked. There is also a new API function to tell you the exact meta value (so you can check if it’s blocked, unblocked, or hidden – or anything else we add in the future).
- Registration functions are being completely overhauled. The major change will hook most of the processing directly to the WP user_register hook. This will give better integration when using other registration forms (such as WooCommerce) which is becoming more popular. I’m breaking out the sending of emails (to the user and admin) as separate functions also hooked to user_register. This will allow you to have the WP-Members notifications even when using another registration form – as long as the WP functions are triggered. And hooking these steps separately means you can turn them off if not needed.
Most of these have been added to the development repo if you want to try them out. If you catch any bugs or issues, please report them.