I activated the plugin and it didn’t block my post…
Make sure you log out of the admin before you test. If you are logged in as admin, you will be able to click through to view the post. (To know if you are logged in, we suggest using the WP-Members login widget, included in the installation.)
Also, for posts, be sure you are using either the `<!–more–>` tag of the plugin’s auto-excerpt feature (found in the plugin’s main options). The blocking only takes place on single posts. Without this tag or a set excerpt, a full post will display on your home page or on an archive/category page.
Check your settings for both posts and pages. The default installation is to block posts by default but not pages. If you’ve installed the plugin and intend to block pages, you will need to set that in the plugin’s options.
The plugin does not block archives, search results, category lists, or other summaries from view. Instead, these templates display a list of post excerpts truncated at the `<!–more–>` tag or by the auto-excerpt function. If you want to block these completely from view, you will need to set up a redirect away from those templates or customize the way your template displays the Loop based on user login state. This also is true for creating a “blog page.” Even if you have the plugin set to block pages, WordPress still treats this as a summary of posts and not a “page.”
Emails are not being sent/received, what is wrong?
WP-Members uses the native WP function wp_mail to email passwords. This is the same function the WP uses if you are using the WP registration process. It is highly unlikely that emails are not being generated. But being sent and/or received is quite different than being generated. Once the plugin generates and email, wp_mail will attempt to send it.
A lot of things can happen after that to cause problems. First and foremost, understand that if you are on shared hosting, you are likely at the mercy of an email queue with the several hundred other accounts also on your shared server. There will be absolutely no way for you to track an email once it is generated and sent to the queue.
Subscribers to the support site have access to the Send Test Emails extension for the plugin which will allow you to send tests of each of the plugin’s emails. Get this extension from the downloads area.
If you are not a technical user, I would highly recommend that you set up your email for SMTP. This will give you a much more robust process because you will be sending email through an authenticated email server. You will be able to track emails and they will have a higher probability of being sent/received.
If you cannot use SMTP, you will need to understand something about how emails sent via web scripts work. For starters, it is likely that unless you are running your own hardware, your host will require that you be sending email from an actual email address. WordPress will by default send from firstname.lastname@example.org. Your host may not allow this.
Even if your host allows that, the receiver may do a reverse lookup on the address and find that this address does not exist (if it does not). It may choose to reject it even before it gets to any spam filter on your specific account.
So send from an actual address. WP-Members has a setting for this in the email settings.
Similar to the above, some hosts and receivers require that an email have proper headers. WordPress does not apply “from” addresses in the email header by default. WP-Members has a filter for the emails that it sends so you can add a “from” address to the header.
For more information on wp_mail, please see this post on my personal blog.
How can I show the user’s login status?
The best way to do this is to add the WP-Members widget to your sidebar.
While it is rare to find a theme these days that is not widget enabled, if you do not have widgets, you can call the function by adding this to your sidebar:
<?php wpmem_inc_sidebar(); ?>
I’m really only using this to add user fields and have the login integrated into the site. I would rather that posts be unblocked by default. How do I do that?
WP-Members gives you the ability to change the settings for how the plugin blocks content. The default setting is to block posts and allow individual posts to be set to unblock at the post level. You can change this setting so that all posts will be viewable by default. If you then have a post that you want blocked to registered members only, you can set the post to block at the post level.
How do I block (or unblock) an individual post (or page)?
If you are using the default settings (as mentioned above), and you have a post that you want to be unblocked (viewable by any user, not just logged in users), on the Edit Post page there will be a meta box in the upper right hand corner “Page/Post Restriction”. Check the box to block the post/page and update to save the setting.
For more information, see Override the Default Setting for Posts in the Users Guide.
How to I change the registration fields that are used and which ones are required?
These settings can be managed on the WP-Members admin panel found under Settings > WP-Members
For more information, see Add Fields in the Users Guide
Where do I find the users registration information?
WP-Members was designed to fully integrate with WordPress to allow maximum compatibility not only with WP, but also with other plugins that rely on WP user registration information, such as discussion forums, email newsletters, etc. The user information is in the main WP users page under Users > Users, then click “Edit” under an individual user. Any non-native WP fields (WP-Members custom fields) are added to the bottom of this page and are fully editable. (Note: if you don’t have any registered users yet, i.e. a clean install, these fields will not display until there is data in them.)
Additionally, user information can be added to the Users > All Users panel by checking the box in the “Users Screen” column in the plugin’s Fields tab.
Some user data can also be edited in the Users > All Users panel. There is a screen option added that lists users who have not yet been exported, as well as bulk actions added to the Bulk Actions menu for exporting and activating (if moderated registration is enabled). A full list of users can be exported using the “Export All Users” button at the bottom of this screen.
For more information, see Managing Users in the Users Guide
Can I change the email address that messages are mailed from?
Most people are unaware that WP-Members uses the native function wp_mail, and that wp_mail sends messages from email@example.com. But it is easy to override this.
To change the email address that the WP-Members emails come from, you can set this address in the plugin’s email settings. For more information, see Set a Custom Email Address in the Users Guide.
To change the email address that all WordPress emails come from, you can do it with a couple of filters added to your functions.php file or you can do it with a plugin.
Can I customize the way the login and registration forms look?
Yes! You can specify a custom style sheet for the default login and registration forms. These forms are tabless and customizable using CSS.
CSS can be applied to the legacy forms, but must be applied via an outside stylesheet (such as your theme), and since the forms are table-based, the customization options are limited.
The login and registration fields overlap my theme pages. How can I fix that?
WP-Members includes a default stylesheet that was developed using the (formerly) default TwentyTen theme. Depending on the theme you are using, this may not fit your theme right out of the box. But the forms have been developed to be very flexible by relying on CSS for their layout (see above). If you have issues of overlap or other issues with the form layout, these are addressed by customizing the CSS.
Can I customize the plugin?
It is not recommended to make direct code changes as they would need to be re-implemented in the event of a plugin upgrade.
The plugin has an extensible framework, so the proper way to approach customization is through the use of action and filter hooks. There is a complete list of hooks here. There are lots of examples in the premium support code snippet library of customized functions and features that utilize the framework of filter and action hooks.
I only want the login form to show in place of protected content and have a separate registration page. How can I do that?
If you turn off the registration in the plugin options, the registration form will not show on protected content posts/pages or the members area. Specify a registration page following the plugin instructions and set this page’s location in the plugin settings.
I need customized registration fields. How can I add/subtract fields?
The registration fields used by the plugin are stored in an array in the WP options table. New text, text area, and checkbox fields can be added in the Fields admin panel in the plugin’s settings menu. Alternatively, a description of how to customize the fields programmatically is available in this post.
Does the plugin have an upload feature so users can add an avatar?
See this post on how to use the wpmem_sidebar_status filter to add a gravatar to the sidebar widget. (For those of you that are not yet premium members, this article is a free sample of the great code snippets and tutorials available to members.) And for premium members, this post shows you how to add an avatar to the Members Area profile page.
How do I get the login widget to display a link to register and/or forgot password?
If you have set up a members-area and register page using the shortcodes for these pages, you can enter the URL for each in the plugin’s options panel. The register page URL will cause a register link to be included in all login forms. The members-area page URL will cause a forgot password link to be included.
User passwords are invalid? What is wrong?
- If there is no password field included as part of the registration form, a random password is emailed when the user is activated. Any other password will be invalid.
- If there is a password field included as part of the registration form, the password is the password from registration.