Description
WP-Members™ is the original membership plugin for WordPress®. Perfect for newsletters, premium content sites, clubs/associations, and more!
The plugin restricts selected WordPress® content to registered site members. WP-Members™ puts the registration process on the site front end so it is inline with your content rather than the native WP login page. WP-Members™ requires no modifications to your theme while remainging scalable for users who want to customize the look and feel, or want to restrict only some content. It is a great tool for sites offering premium content to subscribers, and is adaptable to a variety of applications.
Simple to install and configure – yet customizable and scalable!
Features:
- Block posts, pages, both, or none by default
- Block individual posts/pages
- User login, registration, and profile integrated into your theme
- Sidebar login widget
- Create custom registration and profile fields
- Set which fields display and which are required
- Notify admin of new user registrations
- Hold new registrations for admin approval
- Setting to automatically create post excerpts
- More than 100 action and filter hooks for extensibility
By default, WordPress® allows all content to be “open” and viewable by anyone and allows the site owner to restrict specific content if desired by setting a password for the post. WP-Members™ operates with the reverse assumption. It restricts all posts by default but allows the site owner to “unblock” content as desired. WP-Members™ also offers the ability to change these default plugin settings. For those that simply want to utilize the member management features and possibly restrict some content, the default setting can easily be toggled to block or unblock pages and/or posts by default. No matter what the default setting, individual posts or pages can be set to be blocked or unblocked at the article level, overriding the default setting.
The plugin installs with additional registration fields including name, address, phone, and email. Using the WP-Members™ admin panel, you can also create your own custom registration fields and delete existing ones. Changing the field order is simple with a drag-and-drop interface. All of the registration process is inline with your theme and content rather than using the WordPress® login page. This offers you a premium content site with a professional and branded look and feel. It also provides an opportunity for the user to register without leaving the page to do so – less clicks = more conversions.
There are also some special pages that can be created with simple shortcodes:
- A User Profile page where registered members can edit their information and change/reset their password: [wpmem_profile]
- A Registration page available for those that need a specific URL for registrations (such as email marketing or banner ad landing pages). Note: this is strictly optional as a registration form can also be included by default on blocked content pages: [wpmem_form register]
- A Login page. This is also an optional page as the login form is included by default on blocked content. But if you need a specific login page, this can be created with a simple shortcode: [wpmem_form login]
- And more shortcodes are available!
The plugin runs on a framework with over 100 action and filter hooks so you can fully customize your implementation.
In addition to all of the features above, the plugin can be extended with premium add-on modules available from the support site rocketgeek.com. Members of rocketgeek.com have access to support, examples, tutorials, and code snippets that will help you extend and customize the base plugin using the plugin’s framework. Some of the add-ons have their own hooks and shortcodes to further extend the plugin’s extensibility. Visit the site for more info.
What the plugin does not do
WP-Members does not automatically hide absolutely everything from view. The default install of the plugin is designed to use “teaser” content to drive users to want to register. If you want certain content or menu elements completely hidden, there are ways to do that with some customization between your theme and the plugin, but it is not automatic.
Statement regarding the name WP-Members™
WP-Members™ is a trademark of butlerblog.com.
There are a number of commercial vendors offering products called WP-Members™ or a derivative thereof. Most of these products are neither free, nor are all of them open source. The original plugin hosted here has been publicly available since 2006 and in no way associated with any of these vendors. Tagging your support request in the wordpress.org forums attaches it to this plugin. If you are seeking support for one of these commercial products, you should seek support from the vendor. If you got it from a site other than here then it isn’t WP-Members™.
An official statement is available here.
Regarding RocketGeek.com
Premium priority support is available at the plugin’s site RocketGeek.com. A site membership includes priority support, members-only forum access, plugin extensions, and a custom code snippet library. RocketGeek.com is the only site officially managed for this plugin’s support.
Screenshots

The default when viewing a blocked post - the plugin will deliver a login screen and registration form in place of blocked content (this default can be changed to other options).

Admin Panel - Options Tab - the various option settings for the plugin.

Admin Panel - Fields Tab - the plugin field manager allows you to manage (or delete) the installed extra fields and field order, and also add your own custom fields.

Admin Panel - Dialogs Tab - the major dialogs that the plugin uses for error and other messages can be edited in the plugin's admin panel.

Admin Panel - Emails Tab - all of the emails that are sent by the plugin can be edited in the admin panel.

Posts > All Posts - The plugin adds a column to the list of posts and pages to display if a post or page is unblocked or blocked (the opposite of whatver you have set for the plugin's default in the options tab).

Posts > Edit Post - The plugin adds a meta box to the post/page editor allowing you to set an individual post to be blocked or unblocked (the opposite of whatver your default setting is).

Responsive forms.
Installation
WP-Members™ is designed to run “out-of-the-box” with no modifications to your WP installation necessary. Please follow the installation instructions below. Most of the support issues that arise are a result of improper installation or simply not reading/following directions.
Basic Install:
The best start is to follow the instructions in the Quick Start Guide. There is also a complete Users Guide available that covers all of the plugin’s features in depth.
- Upload the
/wp-members/directory and its contents to the/wp-content/plugins/directory - Activate the plugin through the ‘Plugins’ menu in WordPress®
You are ready to begin using WP-Members™. Now follow the instructions titled “Locking down your site” below.
NOTE: Please follow instructions for installation. The vast majority of people that have marked the plugin as “broken” in the plugin compatibility form simply did not read/follow installation instructions. If something is unclear, ask for assistance.
Locking down your site:
- To begin restricting posts, you will need to be using the
<!--more-->link in your posts. Content above to the “more” split will display on summary pages (home, archive, category) but the user will be required to login to view the entire post. You may also use the plugin’s auto excerpt setting to create post excerpts automatically. If you do not use the “more” tag or the auto excerpt setting, full post content is going to show on archive templates. - To begin restricting pages, change the plugin default setting for pages to be blocked. Unlike posts, the
<!--more-->link is not necessary in the blocking of pages, but must be used if you have the “show excerpts” setting turned on. - To protect comments, we recommend setting “Users must be registered and logged in to comment” under Settings > Discussion
- Also on the page Settings > General, we recommend making sure “Anyone can register” is unchecked. While not required, this will prevent WP’s native registration from colliding with WP-Members™, especially if you are using any of the WP-Members™ additional registration fields.
- Under Settings > Reading, we recommend that “For each article in a feed, show” is set to “Summary.” WordPress® installs with full feed settings by default. If you don’t change this, your feeds will show full content.
Additional Settings and Information
A full Users Guide is available here. The guide outlines the installation process, and also documents how to use all of the settings.
Plugin Extensibility
WP-Members™ is designed to be an out-of-the-box usable plugin, but also have an extensible framework for maximum flexibility and customization. For this purpose, there are a number of shortcodes, filters, and actions that can be used.
See this page for a list of shortcodes and their description.
The plugin has 80 filter and action hooks. For a list of hooks and a description of their use, see this page
The plugin’s premium support site has loads of tips, tricks, and sample code for you to make maximum use out of the plugin. Get more information here. Members of the premium support site also have access to premium add-on modules.
FAQ
The FAQs are maintained at http://rocketgeek.com/plugins/wp-members/users-guide/faqs/
- Installation Instructions
-
WP-Members™ is designed to run “out-of-the-box” with no modifications to your WP installation necessary. Please follow the installation instructions below. Most of the support issues that arise are a result of improper installation or simply not reading/following directions.
Basic Install:
The best start is to follow the instructions in the Quick Start Guide. There is also a complete Users Guide available that covers all of the plugin’s features in depth.
- Upload the
/wp-members/directory and its contents to the/wp-content/plugins/directory - Activate the plugin through the ‘Plugins’ menu in WordPress®
You are ready to begin using WP-Members™. Now follow the instructions titled “Locking down your site” below.
NOTE: Please follow instructions for installation. The vast majority of people that have marked the plugin as “broken” in the plugin compatibility form simply did not read/follow installation instructions. If something is unclear, ask for assistance.
Locking down your site:
- To begin restricting posts, you will need to be using the
<!--more-->link in your posts. Content above to the “more” split will display on summary pages (home, archive, category) but the user will be required to login to view the entire post. You may also use the plugin’s auto excerpt setting to create post excerpts automatically. If you do not use the “more” tag or the auto excerpt setting, full post content is going to show on archive templates. - To begin restricting pages, change the plugin default setting for pages to be blocked. Unlike posts, the
<!--more-->link is not necessary in the blocking of pages, but must be used if you have the “show excerpts” setting turned on. - To protect comments, we recommend setting “Users must be registered and logged in to comment” under Settings > Discussion
- Also on the page Settings > General, we recommend making sure “Anyone can register” is unchecked. While not required, this will prevent WP’s native registration from colliding with WP-Members™, especially if you are using any of the WP-Members™ additional registration fields.
- Under Settings > Reading, we recommend that “For each article in a feed, show” is set to “Summary.” WordPress® installs with full feed settings by default. If you don’t change this, your feeds will show full content.
Additional Settings and Information
A full Users Guide is available here. The guide outlines the installation process, and also documents how to use all of the settings.
Plugin Extensibility
WP-Members™ is designed to be an out-of-the-box usable plugin, but also have an extensible framework for maximum flexibility and customization. For this purpose, there are a number of shortcodes, filters, and actions that can be used.
See this page for a list of shortcodes and their description.
The plugin has 80 filter and action hooks. For a list of hooks and a description of their use, see this page
The plugin’s premium support site has loads of tips, tricks, and sample code for you to make maximum use out of the plugin. Get more information here. Members of the premium support site also have access to premium add-on modules.
- Upload the
Reviews
As good as it gets
This plugin does exactly what you’d hope it does. Login and member’s areas are easy and quick to create. Nice and customizable. Lots of additional options for the Premium, which is completely worth the price. Everything’s so smooth it seems native to WP. Support documentation is excellent and email support is thorough.
Perfect for members area
Perfect solution for creating members’ area in website – possible to hide posts/pages from not logged-in users. Many shortcodes.
Great Plugin…I love it.
Very good maintanace and enhancements. Give Access to meta data is a wonderful Feature.
Fantastic support
The free version of this plugin works great, and the support from the developer is terrific. However, the paid version really takes it to another level. I’m a professional website developer, and I ended up having to write pretty much zero code of my own for a recent project in which I used a very customized version of the plugin. It turned out that the extensions available already covered 90% of my needs, and when I asked how to accomplish the additional steps, the developer sent me code snippets ready to use, saving me dozens of hours of work! Maybe I just got lucky there, but even without that, the support would have rated 5 stars. I don’t leave reviews often on any site, as I am really busy and just don’t feel strongly enough about most things I buy to warrant taking the time. I am happy to make and exception for WP-Members.
A good plugin for memeberships
I integrated this with the Asgaros forum plugin and it worked out well. Everyone loved it. Thanks.
Really an excellent plugin
This plugin is one of those that remind me of how great the WP community is. Just an outstanding piece of work that does everything you need it to do and is dead simple to operate. What continually amazes me about this piece of kit is that every time I run up against a wall and think “oh, that’s probably obscure and can’t be done” I find the author has not only thought of it but provided a solution. I would guess this has happened three or four times in the few months I have been using it. If you are looking for a membership plugin and have little knowledge of how such works I recommend this one highly. If you know what you are after and wonder if this plugin can do it, I also recommend it. Truly deserving of five stars. Thanks to the Author for this and to all those who use it.
Contributors & Developers
“WP-Members Membership Plugin” is open source software. The following people have contributed to this plugin.
Contributors“WP-Members Membership Plugin” has been translated into 7 locales. Thank you to the translators for their contributions.
Translate “WP-Members Membership Plugin” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
3.1.9.3
- Security update for 3.1.9.
- Fix for multiple checkbox and multiple select field types if “comma” was selected as the delimiter (previously, this would break the field settings array option assembly).
- Improvements on field manager add/edit field screen.
- Improvements to multiple checkbox and radio groups: better handling of non-value selections and span wrapper for group separators.
3.1.9.2
- Fix for Users > All Users user search if no search meta have been selected in Fields tab.
- Added User ID as an optional column to add to Users > All Users.
3.1.9.1
- Added missing (new) files.
3.1.9
- Improved user search in Users > All Users.
- Fully deprecated obsolete reCAPTCHA v1. If v1 is selected as a setting, it will be automatically changed to v2. (v1 users check your API keys for compatibility.)
- Removed obsolete comments_template.php.
- Set image field to display “medium” image in dashboard/admin user profile. Admin profile image display links to media editor.
- Added default format to date field shortcode to date format set in WP settings.
- Added format attribute to date field shortcode for custom date formatting.
- Deprecated wpmem_user_profile(), wpmem_profile_update(), wpmem_user_profile_multipart(), wpmem_admin_fields(), wpmem_admin_update().
- Rebuild of dashboard profile functions incorporated into new user profile object class.
- Fields tab bulk action now checks for both page and tab (rather than just tab) to prevent namespace collisions.
- Removed $requested_redirect_to argument from login_redirect filter hook.
- Removed height property of button_div for generic stylesheets.
- Fixed user edit shortcode to display updated user data without page refresh.
- Fixed password change so that login state is maintained after password update.
3.1.8
- Added new native registration handling to accommodate WooCommerce 3.0.
- Added support for user file upload on admin/dashboard profile.
- Added meta_key/meta_value attribute to [wpmem_logged_in] shortcode.
- Added wpmem_user_has_meta() API function.
- Updated post editor shortcode button javascript to include new(er) shortcodes.
- Fixed WP-Members user profile shortcode to only display logged in content (by shortcode) if the wpmem_a ‘action’ is not set (i.e. logged in content only displays if page is in “member links” state).
- Fixed register link in login form to prevent link from displaying if login form is displayed along with the registration form (standard configuration).
- Improved multisite support, including revisions to load all admin dependencies for administrator role, not just super admin. Dependency load role requirement is filterable.
- Improved line break stripping process in form builder to allow for line breaks in textarea fields.
- Improved field shortcode for textarea fields to display line breaks.
- Deprecated old wpmem_do_sc_pages() function, updated wpmem_sc_user_profile().
- Removed $_SERVER[‘REQUEST_URI’] from all admin tab form action attributes. Replaced with new wpmem_admin_form_post_url() API function.
- Fields Tab: ground-up rebuild to utilize WP_List_Table and jquery sorting UI.
- Fields Tab: improved field add/edit screen: return link at bottom of page, display current field upon successful form submission, success message include return link.
- Fields Tab: added support for HTML5 field types: number, date.
- Fields Tab: added support for HTML5 field attributes: placeholder, pattern (regex), title, min, max.
- Corrects an issue with user profile display/update of textarea fields that are not the WP default bio field.
- Added display=raw attribute handling to textarea fields to allow display without converting line breaks to HTML br tags.
- Fixes issue with User Profile form heading not using the get_text() value.
- Improves logic for displaying register link in login form if login page is not set.
3.1.7
- API updates: added wpmem_is_user_activated().
- API updates: wpmem_is_reg_page() added default of current page ID.
- API updates: wpmem_current_url() added check for query string.
- API updates: Added wpmem_fields filter to wpmem_fields().
- API updates: Added wpmem_current_post_id() and wpmem_form_label() functions.
- API updates: Added new [wpmem_avatar], [wpmem_login_link], and [wpmem_register_link] shortcodes.
- API updates: Added filter option in user export to decode html entities in user fields.
- API updates: Added wpmem_get_action action hook when wpmem_a is loaded.
- All admin dependencies and actions/filters loaded in admin api object.
- Corrected issue in forms function were RS Captcha had empty div wrapper variable.
- Removed deprecated functions wpmem_load_admin_js(), wpmem_test_shortcode(), and wpmem_generatePassword().
- Moved remaining deprecated functions to new inc/deprecated.php.
- Added successful registration message on page if nonce validates (for reg redirects).
- Added User object class, handling login, logout, register.
- Added buffering to login form and widget to allow do_login action results to be displayed (such as 3rd party login captcha).
- Added support for WP’s login_redirect filter (loads before wpmem_login_redirect).
- Added a div wrapper for post restricted message.
- Added initial form support for HTML5 number input, & min, max, title, and pattern attributes (placeholder support was added in 3.1.6).
- Updated wpmem_admin_update() to exit if there is no user ID.
- Updated admin notification email to translate field labels.
- Updated login form links and filters to a single process (was one for each).
- Updated WP Registration finalize process.
- Moved form building functions to forms object class.
- Deprecated wpmem_register_fields_arr filter (Use wpmem_fields instead).
- Removing the wpautop() function is now optional rather than default.
- Fixed load fields error checking, install function now correctly returns defaults.
- Changed password reset and password change to use wp_set_password() for improved performance with caching.