How to configure WP Full Members?

WP Full Members is a membership add-on for WP Full Pay that allows you to create protected content that only subscribed members are allowed to view.

Multiple membership tiers are available so you can offer different levels of membership, each one tied to a different subscription plan. Members can use the Customer portal page that allows them to update credit card details, change their subscription plan, cancel their subscription, and download invoices.

This article explains how WP Full Members works, and how you can install and configure it.

This is a long article, here is a table of contents for easy navigation:


How WP Full Members works?

Sign-up flow

Prospects sign up on the subscription forms of WP Full Pay.

The sign-up flow looks like this:

  1. Prospect selects a subscription plan, and submits the subscription form.
  2. WP Full Pay creates a subscription and a customer in Stripe.
  3. WP Full Members performs the following steps: 

    3a) Creates a Wordpress user. 

    3b) Adds the “Subscriber” and membership roles to the Wordpress user. 

    3c) Creates a member which ties together the Wordpress user, the Stripe customer, and the subscription. 

    3d) Sends an email to the subscriber with the login credentials (user, password).

  4. WP Full Pay displays a success message or thank you page to the subscriber.

Please note that you can also import members, or add a member manually.


Viewing a protected content page

What happens when a visitor opens a protected content page:

  1. The plugin verifies whether the visitor is logged in to Wordpress. 

    1a) If not logged in, then the visitor is redirected to the login page of Wordpress. 

    1b) Once the visitor is logged in, the plugin redirects back to the protected content.

  2. The plugin verifies whether the visitor has the membership level to view the content. 

    2a) If the visitor is not allowed to view the content, then she is redirected to a configured “You are not allowed to view” page.

  3. The content is displayed to the visitor.

For making a page or page post protected, please refer to the Protecting content section.


Using the customer portal

Members can take advantage of the customer portal provided by WP Full Pay to upgrade/downgrade subscriptions, cancel subscriptions, update the card used for subscriptions, and download invoices.

When a member upgrades/downgrades a subscription, the corresponding membership level is set for the member automatically.

The customer portal must be used in WordPress authentication mode.

Please refer to the How to create a customer portal page for instructions on setting up a customer portal page.

Revoking access to content

When a member cancels a subscription then her membership is revoked automatically. Similarly, when a member’s payment fails then - after a predefined amount of retries - the membership is revoked automatically as well.


Installation

Installation instructions are available in the Managing add-ons knowledge base article.

Separate instructions are available for the add-on purchased on the website and the add-on purchased on CodeCanyon.

Configuring WP Full Pay and WP Full Members

1. Create subscription plans

Create your subscription plans (recurring prices) on the ‘Products / All products’ page of the Stripe dashboard.

For the sake of demonstration, we’ve created three plans (Bronze, Silver, Gold):

2. Create a subscription form

Create an inline or checkout subscription form on the ‘Full Stripe / Subscriptions / Subscription Forms’ page in WP admin.

Make sure to add the subscription plans from Stripe the form will offer to customers:

3. Embed the subscription form into a page

Get the shortcode of the form, and insert it into a page:

4. Assign subscription plans to membership levels

If subscribing to a plan should create a member then you have to assign the plan to a membership level.

You can assign subscription plans to membership levels on the ‘Full Stripe / Settings / Add-ons / Full Stripe Members / Roles’ page in WP admin:

Important notes:

  • Only plans assigned to a membership level will trigger creating members upon subscription.
  • Only one plan can be assigned to a membership level. 

    (We plan to relax this limitation in a coming release)

  • The membership levels are fixed, you cannot add new ones in the UI. 

    (Contact us if you’d like to add new membership levels by modifying the code)

  • There is no need to configure all membership levels, just leave the unused ones as ‘Not used’.

5. Customize the email template sent with login credentials

WP Full Members sends a registration email with login credentials to new members.

You can customize the email template on the ‘Full Stripe / Settings / Email Notifications / Templates’ page in WP admin:

Important notes:

  • You can use the following members-specific placeholders in the email template: 

    %USERNAME%  - The username of the member (it’s the email address specified on the subscription form) 

    %PASSWORD%  - The generated password

  • For more placeholder tokens, please refer to the Using placeholder tokens knowledge base article.

6. Set up the ‘Customer portal’ page

Insert the [fullstripe_customer_portal authentication="Wordpress"] shortcode into a page or post you’d like to turn into the Customer portal page:



7. Fine-tune your settings

It’s recommended to review the default settings of the plugin on the ‘Full Stripe / Settings / Add-ons / Full Stripe Members / Settings’ page in WP admin:

Let’s see what these options do:

Setting Description
No access page This page is displayed when a logged in member doesn’t have the required membership level to view the content.
Login cookie timeout The amount of time (in seconds) a member can be logged in before having to re-log again.
Enable member status cron job Turnd on a job that goes through all members daily and checks and updates their subscription status.
Block members past due Use this option to block members considered “past due” on their subscription payments.

Protecting content

Protecting entire pages

In order to protect a page, a post, or a content with custom a post type, you must tell WP Full Members that the content is subscriber only, and also that it’s available at a membership level and beyond.

You can configure content visibility by editing the article, and configuring it in the ‘Status & Visibility’ & ‘WPFSM Members’ boxes:

Do the following:

  • Set visibility to ‘Public’ in the ‘Status & visibility’ box.
  • Check the ‘Subscriber only’ checkbox, and set the membership level at which the content should be available in the ‘WPFS Members’ box.

Important notes:

  • For users not having sufficient permissions to view the content, a designated ‘No access page’ is displayed which can be configured on the Settings page of the add-on.

Protecting content fragments

You can protect fragments of a page, not just entire pages.

For protecting blocks:

  • Set visibility to ‘Public’ in the ‘Status & visibility’ box.
  • Uncheck the ‘Subscriber only’ checkbox
  • Implement one of these shortcodes: 

    [fullstripe_members_display_fragment]  

    [fullstripe_members_hide_fragment]

Here is an example to display a div if the logged-in user has Silver or higher membership:

[fullstripe_members_display_fragment role="Silver"]  

<div>This is a fragment - showing it at Silver or higher</div>  

[/fullstripe_members_display_fragment]

Here is an example to hide a div if the logged-in user has Gold or higher membership:

[fullstripe_members_hide_fragment role="Gold"]  

<div>This is a fragment - hiding it at Gold or higher</div>  

[/fullstripe_members_hide_fragment]

Managing members

The member dashboard is available on the ‘Full Stripe / Members’ page in WP admin, and the following page appears:

On this page, you can:

  • Filter members by email address, subscription status, and API mode (test or live).
  • Edit a member by clicking on the email address of the member.
  • Add a new member manually by pressing the ‘Add member’ button.
  • Import subscribers from Stripe by clicking on the ‘Import subscribers from Stripe’ link.
  • Remove a member by pressing the trashcan button next to the member.

Edit a member

You can edit a member by clicking on the email address of the member on the ‘Full Stripe / Members’ page, it opens the ‘Edit member’ page:

You can change the member by entering a new Stripe customer id and/or a new Stripe subscription id.

Please note:

  • The subscription must be a subscription of the customer.
  • When the changes are saved, the plugin recalculates the membership level based on the newly provided subscription.

Add a new member

You can add a new member manually by pressing the ‘Add member’ button on the ‘Full Stripe / Members’ page in WP admin, and the following page appears:

You can add a member by entering an email address, a Stripe customer id, and a new Stripe subscription id.

Please note:

  • The email address entered and the email address of the Stripe customer must match.
  • The subscription must be a subscription of the customer.
  • When the changes are saved, the plugin calculates the membership level based on the provided subscription.

Import subscribers from Stripe

You can add members in bulk by importing subscribers from Stripe.

For importing a subscriber successfully, the following conditions must be met:

You can import subscribers from Stripe by clicking on the ‘Import subscribers from Stripe’ button on the ‘Full Stripe / Members’ page in WP admin, and the following page appears:

Press the ‘Import subscribers’ button, and after having processed the data in Stripe, the plugin displays how many subscribers (member candidates) are found:

Press the ‘Import subscribers’ button to proceed. Importing the subscribers takes as while, and then the following summary is displayed:

Please note:

  • If a subscriber has more than one matching subscription plan then the subscriber can be imported by choosing the membership role that should be used.
  • The number of successfully imported subscribers doesn’t mean that all those subscribers resulted in newly imported members. Some members may (partially) exist, so this is the number of subscribers that must have member records after the import.
  • This is what the plugin does during the import process:
    1. Verifies whether a Wordpress users exists with the subscriber’s email address. 

      1a) In case a Wordpress user already exits then it’s used for the member, go to step 3)

    2. Creates a new Wordpress user.
    3. Adds the membership role to the Wordpress user (for example, Gold).
    4. Inserts/updates a member record in the Wordpress database.

Remove member

A member can be removed by clicking on the trashcan icon next to the member:


Removing a member removes the membership role from the Wordpress user, and deletes the member record from the database.

IMPORTANT: Removing a member doesn’t delete the Wordpress user, and doesn’t change the Stripe customer and the Stripe subscription.

Customizing the plugin with filters

WP Full Members provides some Wordress filters that can be used to extend its functonality.

The following sections describe these filters, and contain links to the reference documentation.

Protecting custom post types

In WP Full Members, only pages of the ‘page’ post type can be protected by default.

You can protect posts or custom post types by implementing the fullstripe_members_supported_post_types filter.

The filter is applied also to the ‘No access page’ option on the Settings page, so the administrator can select a post of a custom post type.

Modifying the member registration email

When a new member is created via a subscription form, the plugin sends a registration email with the login credentials of the new member.

You can modify the contents of this email by implementing the following filters:

In both cases, the template identifier to look for is ‘registrationSuccessful’.

Troubleshooting

Making the plugin work with caching plugins

The plugin performs checking permissions for protected content on the server side, which requires running the plugin code for each page request.

Cached content is served directly from the cache, circumventing the server-side checks that ensure that the right content is displayed to the right visitors.

IMPORTANT: Please exclude all protected content from caching.

Did this answer your question? Thanks for the feedback There was a problem submitting your feedback. Please try again later.

Still need help? Contact Us Contact Us