Online Courses

Thrive Apprentice Membership Plugin Tutorials

 October 20, 2019

By  Peter Nyiri

Thrive Apprentice is not a membership plugin, but I will show you how it integrates with several free membership plugins.

If you want to integrate WooCommerce to sell your online course instead of a membership plugin, this article contains a full tutorial.

Learn more about setting up the Thrive Apprentice plugin and selling with SendOwl or ThriveCart.

Online Course With Paid Membership Pro Plugin

Despite its name, this plugin has a free version. It gives you a basic set of functions with simple basic membership pages already pre-made. This is how you set it up.

Install the Paid Memberships Pro plugin, then PMP Roles.

Go to Memberships>Membership Levels, add the desired levels.

I am adding a Free Membership and a Traffic Course level. Don’t worry about all the details, just add the name of the level and the price.

PM Pro Roles

Doing this will also generate the user role we need in the Thrive Apprentice plugin for restricting the content of the course.

Pages: This is where you can add your membership signup pages:

  • Account Page
  • Billing Information Page
  • Cancel Page
  • Checkout Page
  • Confirmation Page
  • Invoice Page
  • Levels Page

Payment Gateway & SSL Settings

PayPal, Stripe, Authorize.net, 2checkout, Braintree, check and Cybersource are supported, plus there is a test setting.

Email Settings

This is where you can set the “From” email address, the sender’s identity.

You can also set when you, the site admin, want to receive emails, such as checkout, cancellation, new user signup.

Additional Menu Points

There is a menu for free and pro add-ons, viewing the members list, reports, orders.

You also have the option to set up discount codes (coupons).

Here are just some of the add-ons (the Pro membership costs $297/year for 1-5 sites):

Hide Admin Bar From Non-admins – WordPress.org
A tweak of the code by Yoast to hide the admin bar for non-admins only.

Import Users from CSV – WordPress.org
Import Users data and metadata from a csv file.

Paid Memberships Pro – Add Member Admin – PMPro Plus
Allow admins to add members in the WP dashboard.

Paid Memberships Pro – Add Name to Checkout Add On – PMPro Plus
Adds first and last name fields to the user account section at checkout for Paid Memberships Pro.

Paid Memberships Pro – Add PayPal Express Add On – PMPro Plus
Add PayPal Express as a Second Option at Checkout

Paid Memberships Pro – Addon Packages – PMPro Plus
Allow PMPro members to purchase access to specific pages. This plugin is meant to be a temporary solution until support for multiple membership levels is added to PMPro.

Paid Memberships Pro – Address For Free Levels Add On – PMPro Plus
Show address fields for free levels also with Paid Memberships Pro

Paid Memberships Pro – Advanced Levels Page Shortcode Add On – PMPro Plus
An enhanced shortcode for customizing the display of your Membership Levels Page for Paid Memberships Pro

Paid Memberships Pro – Affiliates Add On – PMPro Plus
Create affiliate accounts and codes. If a code is passed to a page as a parameter, a cookie is set. If a cookie is present after checkout, the order is awarded to the affiliate account.

Paid Memberships Pro – Approvals Add On – PMPro Plus
Grants administrators the ability to approve/deny memberships after signup.

Paid Memberships Pro – Auto-Renewal Checkbox – PMPro Plus
Make auto-renewal optional at checkout with a checkbox.

Paid Memberships Pro – AWeber Add On – WordPress.org
Sync your WordPress users and members with AWeber lists.

Paid Memberships Pro – bbPress Add On – WordPress.org
Allow individual forums to be locked down for members.

Paid Memberships Pro – Better Logins Report Add On – PMPro Plus
Adds login, view, and visit stats for “This Week” and “This Year”.

Paid Memberships Pro – BuddyPress Add On – WordPress.org
Manage access to your BuddyPress Community using Paid Memberships Pro.

Paid Memberships Pro – Check Levels Add On – PMPro Plus
A collection of customizations useful when allowing users to pay by check for Paid Memberships Pro levels.

Paid Memberships Pro – Constant Contact Add On – WordPress.org
Sync your WordPress users and members with Constant Contact lists.

Paid Memberships Pro – Custom Level Cost Text Add On – PMPro Plus
Modify the default level cost text per level, per discount code, or globally via advanced settings.

Paid Memberships Pro – Custom Post Type Add On – PMPro Plus
Add the PMPro meta box to CPTs and redirects non-members to a selected page.

Paid Memberships Pro – Developer’s Toolkit – PMPro Plus
Various tools to test and debug Paid Memberships Pro enabled websites.

Paid Memberships Pro – Donations – PMPro Plus
Allow customers to set an additional donation amount at checkout.

Paid Memberships Pro – Download Monitor Integration Add On – PMPro Plus
Require membership for downloads when using the Download Monitor plugin.

Paid Memberships Pro – Email Confirmation Add On – PMPro Plus
Require email confirmation before certain levels are enabled for members.

Paid Memberships Pro – Email Templates Add On – PMPro Plus
Define your own custom PMPro HTML Email Templates.

Paid Memberships Pro – Extra Expiration Warning Emails Add On – PMPro Plus
Send out more than one “membership expiration warning” email to users with PMPro.

Paid Memberships Pro – GetResponse Add On – PMPro Plus
Sync your WordPress users and members with GetResponse campaigns.

Paid Memberships Pro – Gift Levels Add On -PMPro Plus
Some levels will generate discount codes to give to others to use for gift memberships.

Paid Memberships Pro – Group Discount Codes Add On – PMPro Plus
Adds features to PMPro to better manage grouped discount codes or large numbers of discount codes.

Paid Memberships Pro – Infusionsoft Add On – WordPress.org
Sync your WordPress users and members with Infusionsoft contacts.

Paid Memberships Pro – Invite Only Add On – PMPro Plus
Users must have an invite code to sign up for certain levels. Users are given an invite code to share.

Paid Memberships Pro – Kissmetrics Add On – WordPress.org
Integrates your WordPress site with Kissmetrics to track meaningful user data, with or without Paid Memberships Pro.

Paid Memberships Pro – Limit Post Views Add On – PMPro Plus
Integrates with Paid Memberships Pro to limit the number of times non-members can view posts on your site.

Paid Memberships Pro – MailChimp Add On – WordPress.org
Sync your WordPress users and members with MailChimp lists.

WP Bouncer (free)

This plugin prevents people from sharing their login credentials for your site, which is especially good for paid membership sites.

Affiliate Management

You can use PM Pro’s paid Lightweight Affiliate Tracking plugin.

The plugin creates unique affiliate codes assigned to your affiliate users. When someone visits your site using an affiliate URL (a code is passed to a page as a parameter), the affiliate’s cookie is set for the specified number of days. If a cookie containing an affiliate referral code is present after checkout, the order is logged in the affiliate’s account.

If you don’t want to pay for the PM Pro Plus membership in order to set up an affiliate program, you can choose the free Affiliates Manager Paid Membership Pro Integration plugin.

When members pay for membership on your site, this add-on will check to see if the member was referred to your site by an affiliate. It will then give commission to the affiliate who referred the user.

This plugin also has a PayPal mass pay function.

The way it works is very simple:

  1. Download and Install the Paid Memberships Pro Integration add-on.
  2. Simply keep the Affiliates Manager and the Paid Memberships Pro plugins active in your WordPress site.

Online Course Using S2Member Plugin

Unlike PMPro, S2Member has a lot of options.

The first thing you must do is create 2 new pages called:

1- ‘Subscribe’ – This is your Membership Options/Subscribe/Register page. For an online course you can call it “Pricing”, “Course Registration” and contains the price list of the different courses you offer with payment buttons. (Click on the link to see what I set up with Thrive Architect.)

2 – ‘Members’ – This is the ‘Login welcome’ page of the members/course area. The Login Welcome Page that you configure with s2Member will serve as a customer’s “My Account” page, or something similar. This makes it possible for a customer to find what they’ve purchased and to locate information associated with their account.

How to install S2 Member and create a custom login screen

Here is a video that also explains the process:

Once you have done this we can set everything up.

In your dashboard, click S2member>General Options

You will be presented with this screen:

S2 Member settings

With the free version of this plugin you can add four different paid membership levels plus a free level. Unlimited Membership Levels are only possible with the paid s2Member Pro.

If you set the “Open Registration” option to “Yes”, , you’re unlocking “/wp-login.php?action=register“. When a visitor registers without paying, they’ll automatically become a Free Subscriber at Level #0. The s2Member software reserves Level #0; to be used only for Free Subscribers. All other Membership Levels [1-4] require payment.

The plugin also has recurring payment option and the member will be re-billed every cycle until the member cancels their subscription.

The defaults are Bronze Member, Silver, Gold and Platinum, however you can name these according to the titles of the courses you ant to sell.

WordPress adds user roles ‘s2Member Level #’ accordingly.

Security Subscription Key… Encrypts your private membership data to secure against hacking. Click ‘auto generate’ and then copy and paste your unique key into notepad and save it somewhere safe!!

The Registration Process

  1. Users will go to your Membership Options Page (which you may configure; see: Dashboard → s2Member → General Options → Membership Options Page). On this Membership Options Page (that you create in WordPress) you’ll insert the PayPal Subscription Buttons that were generated for you by s2Member.
  2. A User will click on a PayPal Subscription Button from your Membership Options Page. They will be transferred over to PayPal in order to agree to your Membership terms and pricing. You can customize the Checkout Page Style, Pricing, Payment Periods, and more, whenever you generate your PayPal Buttons through s2Member.
  3. Once a User has completed the Subscription Signup Process at PayPal, they’ll be returned to your site, where they’ll be activated by s2Member instantly, and given the opportunity to register a Username & Password for their Membership. (Note: they’ll be allowed to register a Username & Password even if you’ve set ‘Anyone Can Register’ to `Off` in your General WordPress options, because s2Member identifies the User as having paid for Membership access through PayPal).
    s2Member will also send the User an email with instructions on how to register their Username & Password, just in case they missed anything after checkout. That email will be sent to their PayPal email address. Much of this is handled through the PayPal IPN service behind-the-scenes, where PayPal and s2Member communicate with each other.
  4. Once a User has completed checkout and registered a Username & Password, they’ll be able to log in. The first page they’ll see after logging in will be your Login Welcome Page (which you’ll need to configure in the s2Member General Options panel). Your Login Welcome Page can contain whatever you like. You can design this Page in WordPress.

Set Up PayPal Payment Options

S2member allows us to fully integrate with our PayPal accounts so that everything is handled seamlessly.

However there are a few things you need to set up in S2member and your PayPal account.

S2 PayPal config

If you are using PayPal as a payment option then you will have to fill out all of the required fields. You will need your:

  • PayPal merchant ID
  • Your PayPal email address
  • Your PayPal API username ( In PayPal click >Profile >API ACCESS)
  • Your PayPal API password
  • Your PayPal API signature

You will have to access your PayPal account to find these details. Once you enter them you will be asked if you want ‘Developer/Sandbox testing. Make sure you select ‘NO’ when your site is live.

Enable Button Encryption… I always select ‘YES”. This will produce encrypted PayPal buttons, which makes it safer for you!

Enable logging routines… Select ‘NO’. If you ever experience any issues then turn this feature on and you can view all of the logs to detect errors!

PayPal IPN Integration… This does not require you to enter any details but you do need to login to your PayPal account and enable your IPN

>Account profile > Instant Payment Notification Preferences > Enter settings and turn IPN ‘ON’

PayPal PDT Identity/Auto-return Integration… Login to your PayPal >Account Profile > Website payment preferences > Make sure the auto-feature is turned ON

You will then be shown a PDT token. You have to enter it

Sign up confirmation email…. This is already pre-filled for you but it allows you to edit the confirmation email that will be sent to your new member after they have completed payment.

This is useful and you should customize it

Automatic EOT behavior… This tells S2member to cancel a members account if they cancel their subscription payment, open a dispute or have a refund.

Setting Up Your Payment Buttons

Go to S2member > PayPal buttons

Fill in the options.

Once you have filled in the options simply hit ‘Generate Button Code’

Copy the code that becomes highlighted and then simply paste this code onto your ‘subscribe’ page that you created earlier.

You can also set up buttons for several levels (courses):

S2 PayPal buttons


You’ll be happy to know that s2Member handles cancellations, expirations, failed payments, terminations (e.g., refunds & charge backs) for you automatically. If you log into your PayPal account and cancel a Member’s Subscription, or, if the Member logs into their PayPal account and cancels their own Subscription, s2Member will be notified of these important changes and react accordingly through the PayPal IPN service that runs silently behind-the-scene.

The PayPal IPN service will notify s2Member whenever a Member’s payments have been failing and/or whenever a Member’s Subscription has expired for any reason. Even refunds & charge back reversals are supported through the IPN service. If you issue a refund to an unhappy Customer through PayPal, s2Member will be notified and the account for that Customer will either be demoted to a Free Subscriber or deleted automatically (based on your configuration). The communication from PayPal → s2Member is seamless.

If a User signs up for a monthly Subscription on Jan 1st, and then cancels their Subscription on Jan 15th; technically, they should still be allowed to access the site for another 15 days, and then on Feb 1st, the time they paid for has completely elapsed. At that time, s2Member will remove their Membership privileges; by either demoting them to a Free Subscriber, or deleting their account from the system (based on your configuration). s2Member also calculates one extra day (24 hours) into its equation, just to make sure access is not removed sooner than a Customer might expect.

Affiliate Program Integration

WPAM (WP Affiliates Manager) is a free affiliate software that embeds itself right into WordPress. It has a free version.

Affiliate Manager integrates with S2 Member through this plugin.

Email Marketing Integration

S2 Member integrates with MailChimp and AWeber.

You can have your members automatically subscribed to your AWeber or MailChimp email lists (i.e., newsletters / autoresponders). You’ll need an AWeber/MailChimp account and your List IDs. You will ALSO need either an API Authorization Code.

Simple Membership Plugin

This is how the plugin works:

  1. Visitors click on the Join Us link, which takes them to the “Join Us” Page which contains all the different types of memberships you offer on your site.
  2. On this page, they decide which membership they want (Free, Premium, Gold, etc.)
  3. If they choose the free Membership, they click on the link that takes them to the registration page (if you allow free membership).
  4. If they click on the Paid Membership button, they make a payment for the appropriate membership access level.
    Once the payment is confirmed, the plugin will create the appropriate membership account.
  5. The member will receive an email that contains a special link to complete the registration.
  6. When the member clicks on that special link in the email it will bring them to the registration page and let them choose a “username” and “password” for their account.

Here is the documentation and a set of videos that walk you through the setup process:

How to Install The Simple Membership Plugin

Create a Free Membership Level

Create a Paid Membership Level

Create a Subscription Membership Level

How to Protect Content

The plugin integrates with MailChimp, AWeber and Convertkit.

Affiliate Management

Affiliates Manager Simple Membership Integration allows you to integrate Simple Membership plugin with the Affiliates Manager plugin. Read the usage documentation here.

Fixing the WordPress Not Sending Email Problem

Since registration for your online course is done through WordPress, you will more than likely run into the situation where the user signup emails sent by WordPress are not arriving.

I am not going to go into the details of this email delivery problem – it has to do with the method WordPress sends out emails.

What you need to know is that the problem doesn’t come from your web host’s email service – even when you have no problem sending out emails from your domain email, WordPress notification emails may take hours to arrive or not arrive at all. Obviously this would be disastrous for your business, however it is easy to fix.

  1. Get a free SocketLabs account, which gives you up to 20,000 free emails per month.
  2. Verify your email address with them.
  3. Open the email you get right after this and click on the link inside to provide basic information on your business, without that your account will not get activated.
  4. Install the SocketLabs WordPress plugin, which will help you send your emails through their service.
  5. Enter your Server ID and API key.

After setting this up, your email will arrive in seconds.

You can also use their service for your email marketing needs, their basic plan costs $9.95 /month and allows  you to send 40,000 messages/month. They also have very good email deliverability. (Make sure you check out their terms of acceptable use, e. g. you can’t send affiliate marketing emails.)

Peter Nyiri

Peter Nyiri

  • Hello! I’m have PMPro (the free version) and the levels don’t show up in Thrive Apprentice restriction rules. Any advice on how I can get the levels to populate as a rule?

    • Hi Emily,

      PMPro isn’t using the WP user roles for its membership levels.

      1. Install the “Roles for Membership Levels” plugin
      2. Create WordPress membership levels using a plugin like Members
      3. Assign the PMPro levels to the WordPress roles.

      “Add a WordPress Role for each Membership Level with Display Name = Membership Level Name and Role Name = ‘pmpro_role_X’ (where X is the Membership Level’s ID). Use this plugin to apply special WordPress Capabilities to a Membership Level or in conjunction with third party plugins like User Roles Editor to assign specific permissions based on the user’s role.”

  • {"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}