PMPro Update 1.9.5.4

Version 1.9.5.4 of Paid Memberships Pro is out with a handful of bug fixes. Included are fixes for Theme My Login 7, Stripe and TwoCheckout integration, and a few others.


About the Update

In addition to the improvements mentioned above, we added some SQL escaping to our reports pages. While this work is marked as a SECURITY update, we do not believe there were any related vulnerabilities in the prior code. It’s just good practice to be extra cautious here to harden the code for future updates.

In addition to the PMPro team, this update includes work by many third party authors including Jeff Farthing, Charl P. Botha, and David Cervantes Caballero.

Please update Paid Memberships Pro from the plugins page of your WordPress dashboard. You can also get the latest version of PMPro here or version 1.9.5.4 specifically here.


About the Level Description and Confirmation Message

As of version 1.9.5.4, we are no longer using the WordPress the_content filter when displaying the membership level’s description or confirmation message. Using the the_content filter in these areas allowed you to use shortcodes and other post styling that relied on that filter. However, some sites (depending on the other plugins installed) would get caught in an infinite loop while rendering this text and crash. If you need to revert your site, please copy and paste this code recipe into a helper PMPro Customizations plugin.

Note that these filters only affect the level description and confirmation message when displayed on your site. If your level description or confirmation message appear in emails to your members, shortcodes and other styles may not work even with the above gist installed.


The full list of updates is below.

  • SECURITY: Some values used in SQL queries in our reporting code were sanitized but not later escaped via esc_sql(). All variables added to SQL queries in the reports are now wrapped in esc_sql(). The previous code was not vulnerable to any known attack, but this change hardens the code against vulnerabilities in the case other parts of the code change in the future.
  • BUG FIX: Fixed issue with lost passwords when Theme My Login 7 is active. (Thanks, Jeff Farthing)
  • BUG FIX: No longer sending an “error canceling the subscription” email when subscriptions are cancelled from Stripe.
  • BUG FIX: Fixed issue where TwoCheckout orders were not correctly updating the TOS consent data. (Thanks, Charl P. Botha)
  • BUG FIX: Fixed issue where privacy function weren’t defaulting to $current_user correctly. In practice, we were always passing a user_id anyway.
  • BUG FIX/ENHANCEMENT: Changed the confirmation message to use wpautop() instead of apply_filters('the_content'). If you were relying on shortcodes or other content that required that filter, you must use the custom functions outlined earlier in this post to revert this for your site.
  • BUG FIX/ENHANCEMENT: Using the strict parameter of sanitize_user when getting usernames. This will prevent some special characters from being used in usernames at checkout. This is inline with WP core and other plugins. (Thanks, David Cervantes Caballero).
  • ENHANCEMENT: Added a breakdown of orders at each price point to the Sales Report widget.
  • ENHANCEMENT: Showing the Stripe version we use on the Payment Settings page.
  • ENHANCEMENT: Updated Copyright date and GPLv2 link in license.txt.

Memberlite 4.0: Bug Fixes, Improvements, Memberlite Elements, and Upgrade/Migration Steps

We’re excited to announce a new phase in the Memberlite theme lifecycle plus the release of the Memberlite Elements plugin.

Memberlite v4.0

This update prepares Memberlite further for submission to the WordPress.org theme repository. One requirement for this is that some functionality needed to be moved into plugins. Functionality around banners, sidebars, and widgets have been moved into the Memberlite Elements plugin. After upgrading to Memberlite 4.0, you will need to install the new Memberlite Elements plugin. Use the steps below to upgrade Memberlite and install the new required plugin.

As soon as the theme is accepted into the WordPress.org theme repository, we will push out a minor update to tell the theme to update through WordPress.org going forward.

To find out more about Memberlite 4.0, you can now browse the demo site of the entire Memberlite Theme or view full theme documentation at the Memberlite Theme Support Site.

 


Adhering to WordPress theme standards and best practices.

In preparation for the theme’s submission to the WordPress.org Themes Repository we’ve updated the code to fully adhere to WordPress’ standards and guidelines as outlined in the Theme Check plugin. We also purchased a theme review from Justin Tadlock at ThemeReview.co, which prompted additional updates to harden up our code base and make it more reliable and secure for all users.

In Memberlite v3.0 all shortocdes were extracted to a separate plugin: Memberlite Shortcodes. For Memberlite v4.0, some other functionality around banners, sidebars, and widgets have now been moved to a new plugin Memberlite Elements.


Style Updates

Memberlite v4.0 has a few relatively minor, but impactful, style updates.

  • The default font size has been increased for improved readability. This should look fine on most sites, but you may need to tweak some content and styles on your site to get things to fit with the new sizing.
  • We are now including some web safe fonts (Arial, Helvetica, Times, etc.) in addition to the Google Fonts previously available.
  • Font Awesome has been updated to version 5.2, offering new icons and icon styles (regular, solid and brand).
  • Buttons have been given a hover effect to grab the attention of your users.
  • A new [memberlite_accordion] shortcode has been added to Memberlite Shortcodes.
  • Additional theme Hooks and Filters have been added to support individual site customization as well as child theme development.

Already using the Memberlite Theme?

Below are the step-by-step directions for upgrading to the new version and installing the companion Memberlite Shortcodes plugin. Before beginning this process we recommend taking a backup of your WordPress site.

  1. Back up your site files and database [instructions]
  2. Install and activate the Memberlite Elements plugin.
  3. Upgrade your theme via the WordPress Updates admin page, or download the theme and upload it to your /wp-content/themes/ folder.
  4. If you haven’t already, consider installing the Memberlite Shortcodes plugin.
  5. If you are using a caching plugin, delete and rebuild your cache.

PMPro Plus members can get support for this upgrade process via the Members Forum. Just open a topic and we will schedule a time to perform your upgrade.


Learn more about Memberlite 4.0 at the links below.

This entry was posted by Jason Coleman in Memberlite, Release Notes and tagged . Bookmark the permalink. Last updated: . Titled Memberlite 4.0: Bug Fixes, Improvements, Memberlite Elements, and Upgrade/Migration Steps

Recent updates to the Theme My Login plugin and how they will affect your membership site.

We have long recommended Theme My Login as a very useful plugin for sites running Paid Memberships Pro. With features including themed login, frontend user profiles, and simple redirection rules, we found TML to be a great addition for any membership site. We recommended it to 100% of our users and included it in our WordPress bundle.

With the release of version 7.0+ of Theme My Login, several key features that were once included in the WordPress.org repository version of the plugin are now offered as premium extensions. This post details some short and long term options for membership site owners concerned about the changes and the best steps to take.


Themed login pages are still part of the free plugin.

If you were only using Theme My Login to show your login form on the frontend of your website and not using any of the “modules” that came with the plugin, then you are fine and can continue to use Theme My Login as you were before. Make sure that you are upgraded to the latest version of Paid Memberships Pro as well, which included a fix so PMPro will still redirect the registration page to the PMPro levels page and handle login redirects properly.


If you can afford it, purchase the Theme My Login extensions bundle after upgrading.

Theme My Login is a solid plugin maintained by a great developer, Jeff Farthing. Support Jeff and your site by purchasing the premium extensions you need.

Currently you can purchase extensions a la carte for $10 each or a bundle of all 6 legacy extensions for $49.99. Jeff has kindly given us a discount code to share with our members to receive 20% off any extension purchase, including the bundle. Just type in “PMPRO” on the checkout page to apply the 20% discount. This code will work through the end of July 2018.

You can purchase the Theme My Login extensions here.


After upgrading you may have to redo some settings.

We purchased the bundle ourselves and were able to get our themed login and profile pages back online in a few minutes. We did have to redo a few of the settings though. Here are a few notes we took during the upgrade that might help:

  1. When we installed the Redirections extension, all of our redirection rules all migrated properly upon upgrade.
  2. When we installed the Themed Profiles extension, our settings were reset to the default. We typically recommend checking the box to theme profiles for the Subscriber role and checking the box to keep Subscribers out of the dashboard.
  3. The default Login, Register, Password Reset, and Profile pages are no longer editable as pages. However, we were able to take our “your-profile” page, keep the [theme-my-login] shortcode on the page, and then change the slug in the main TML settings to “your-profile”. Now the profile page has the template, sidebar, and other settings we want for that page.

The PMPro Member Homepages add on is a good substitute for the TML login redirect module.

One of the TML modules allowed you to select a different page to be redirected to after logging in based on the user’s role. This way you could have subscribers redirected to one page and admins redirected to another.

If you don’t need to redirect users based on roles, you can redirect them based on their membership level instead using our Member Homepages add on.

In the short term, you can keep using version 6.4 of TML

While its always smart to keep your WordPress plugins up to date for security considerations, in the short term you can keep version 6.4 of TML active. The plugin won’t allow you to update in the WP dashboard unless you read the notice on the settings page and change a setting to approve the upgrade to version 7.0.

Version 6.4 TML is likely to work for a while until a core update to WordPress changes something about the login system that breaks it. We highly recommend upgrading to TML 7.0+ as soon as possible, but you have some time to figure things out.


Improving Paid Memberships Pro with Added Profile Features

The new business model for Theme My Login is a good move for Jeff and will help him to build a business around the plugin that will ensure the plugin continues to be maintained and supported. We like plugins that do their one thing really well, and we’ve been happy with Theme My Login over the years. I’d rather not use our limited development time to build functionality covered by other competent plugins. On the other hand, the cost of the extensions are going to keep some PMPro users from installing Theme My Login. This factors into our decisions around what features we build into the core PMPro plugin, build into our Add Ons, or reserve for third party plugins.

In the long term, we are looking into moving the themed login and profile page features into the core PMPro plugin or possibly an Add On of our own. We are in the early stages of discussion and will start from first principles to figure out what kind of solution will be best for our users.

In the short term, you can purchase the extensions you need using the PMPro discount code, use some of the workarounds mentioned in this post, or continue to use TML 6.4 until a core WordPress update breaks the plugin.

PMPro Updates 1.9.5.2 and 1.9.5.3

Versions 1.9.5.2 and 1.9.5.3 of Paid Memberships Pro are out with just two bug fixes. Version 1.9.5.2 fixes compatibility with Theme My Login. Version 1.9.5.3 fixes an issue (we tried and failed to fix in 1.9.5.2) where existing members who checked out for their same level with PayPal Standard would have their levels expire from the checkout date instead of being extended based on their existing level.


Please update Paid Memberships Pro from the plugins page of your WordPress dashboard. You can also get the latest version of PMPro here or version 1.9.5.3 specifically here.


The full list of updates is below.

1.9.5.3

  • BUG FIX: The pmpro_ipnhandler_extend_memberships function actually needed use $user_id instead of $current_user.

1.9.5.2

  • BUG FIX: Fixed compatibility with Theme My Login version 7. (Thanks, Jeff Farthing)
  • BUG FIX: Fixed missing $current_user bug in pmpro_ipnhandler_level_extend_memberships function. (Thanks, Anne)

Don’t use Paid Memberships Pro on the WordPress.com Business Plan

In mid-2017, WordPress.com began to offer a Business Plan. Sites on this plan pay an annual fee to unlock various features, specifically the ability to install any theme or plugin from the WordPress.org repository (prior to this, sites could only activate a specific set of plugins). This means that WordPress.com sites could finally run Paid Memberships Pro. Pretty neat. Or not.


While it is possible to activate the Paid Memberships Pro plugin on a Business Plan, we do not recommend running PMPro or any of our Add Ons on a WordPress.com account. The main issue is that even business plans cannot SFTP into their sites or edit the plugin files in any way. This is a problem for 2 reasons.

  1. PMPro is a complicated plugin with unpredictable dependencies on other plugins and themes. If PMPro is not playing nice with another plugin or theme on your WordPress.com setup, maybe even causing a fatal error that crashes your site, you will not be able to edit your site files to debug the issue.
  2. We expect most membership sites to require custom code to function properly. While we aim to make our Add Ons as user friendly as possible and improve them all as time goes on, more than most other plugins we encourage our users to hire developers to tweak their membership sites using custom code. This isn’t possible on WordPress.com.

Again, it is possible to activate Paid Memberships Pro, and there are likely many users successfully running it on the WordPress.com Business Plan. I just want to make it clear that until WordPress.com offers SFTP or a viable alternative, I’d rather not have people get setup on PMPro only to run into a need or support issue that would require customization or debugging.


So where should I host?

It’s been a long standing question which hosting companies we recommend for your Membership site. This guide outlines some general hosting requirements you can review to make sure your selected host will work with Paid Memberships Pro.

If your site is currently hosted on WordPress.com and you’d like to move to self-hosted WordPress, check out this guide on the necessary steps for migrating your website. You can perform the migration yourself, work with your new hosting company to complete the move, or even hire a WordPress Happiness Engineer to perform a guided transfer.

PMPro Update 1.9.5.1

Version 1.9.5.1 of Paid Memberships Pro is out with a handful of bug fixes. These bugs have the potential to hinder sales (especially for customers using PayPal Standard and PayPal Express), so be sure to upgrade.


Please update Paid Memberships Pro from the plugins page of your WordPress dashboard. You can also get the latest version of PMPro here or version 1.9.5.1 specifically here.


The full list of updates is below.

  • BUG FIX: Fixed issue with the PayPal IPN Handler where existing users checking out for a new level would sometimes have their membership and new subscription cancelled.
  • BUG FIX: Fixed PayPal IPN Handler to set the status of old levels to ‘changed’ (instead of ‘inactive’) when processing checkouts. This will improve the accuracy of reports.
  • BUG FIX/ENHANCEMENT: Now checking for the recurring_payment_skipped transaction type in the PayPal IPN handler. When a payment is skipped and this message is sent, we will now fire off the failed payment email to the customer and admin. (Thanks, mjulian87 on GitHub)
  • ENHANCEMENT: Removed validation info from the IPN log.
  • ENHANCEMENT: Updated German (de_DE) language files.

PMPro Update 1.9.5

Version 1.9.5 of Paid Memberships Pro is out with support for the new privacy tools added in WP 4.9.6 and a handful of bug fixes.

Please update Paid Memberships Pro from the plugins page of your WordPress dashboard. You can also get the latest version of PMPro here or version 1.9.5 specifically here.

More information about the privacy-related updates can be found in our blog post here: Getting Ready for GDPR.

The full list of updates is below.

  • BUG FIX: Added ‘error’ to the list of default order statuses.
  • BUG FIX: Fixed issue where PayPal recurring_payment messages with status “Pending” were treated as “Failed” by our IPN handler. (Thanks, Matt Julian)
  • BUG FIX: The redirect away from the billing page needed to be in the preheader instead of the page shortcode.
  • BUG FIX/ENHANCEMENT: Using the pmpro_getOrderStatuses() function in adminpages/orders.php instead of redundant code there.
  • BUG FIX/ENHANCEMENT: Passing the $order as a second parameter to pmpro_after_checkout when called from the PayPal IPN handler. (The $order was being passed already for “regular” checkouts.)
  • ENHANCEMENT: You can now sort by the Membership Level column added to the users list in the dashboard. (Thanks, Matt Julian)
  • FEATURE: Added support for the privacy features added in WP 4.9.6. Details below.
  • FEATURE: Added suggest privacy page text.
  • FEATURE: Added PMPro-related user meta fields, membership history, and order history to the personal data export. You can filter which user meta fields are included in the export using the new pmpro_get_personal_user_meta_fields filter.
  • FEATURE: Deleting PMPro-related personal data fields when personal data is erased. The ereaser deletes a number of user meta fields (filterable through the new pmpro_get_personal_user_meta_fields_to_erase filter). A user’s membership history and order history are retained unless the user is deleted.
  • FEATURE: Now saving a log of when the TOS page is agreed to at checkout. The ID and date modified of the TOS post is saved along with a timestamp of when the TOS was agreed to. This information is shown on the single order page in the admin, the orders CSV export, and on the edit user profile page in the admin. Note that this feature does not yet backport any data for existing users or ask users to re-agree to the TOS if the TOS has gone out of date.

Getting Ready for GDPR

WordPress has released its latest version, 4.9.6, which includes privacy-related updates intended to help your site comply with the European Union’s General Data Protection Regulation (GDPR). Continue reading for background information on these updates and to explore the three new GDPR-related tools in WordPress 4.9.6 and Paid Memberships Pro 1.9.5, including:

  1. Suggested Privacy Policy page language related to PMPro-captured data,
  2. Included membership information in the personal data export, and
  3. The membership data that will be erased or anonymized as part of the user’s right to delete their personal information.


Background Information

On May 25th, 2018 the grace period for the European Union’s resolution instituting better privacy standards will end. The GDPR demands that site administrators, as well as all parties involved in the production of a site, pay careful attention when handling user data, as well as make accommodation for a user’s data to be exported or erased upon request.

Whether or how this regulation applies to websites outside of the EU is a legal question being discussed vigorously right now, but my general understanding is that these regulations would apply to any site worldwide with EU visitors. And so unless you specifically target a certain geography or exclude EU users, this would mean the GDPR applies to your site. Even if you aren’t concerned with the legal implications, many of the GDPR-related suggestions offer a good way to be more transparent with your users regarding their data privacy.

Back in April, we published a blog post outlining the GDPR requirements from a high level. In this post we will review the recent changes in WordPress core to assist you with attaining compliance, how Paid Memberships Pro will integrate with those core processes, and discuss the implications of the new regulations for site owners, administrators, designers, and developers.

There are 3 new tools in WordPress 4.9.6 that PMPro is now integrating with to help you to update your privacy policies and attain GDPR compliance.


Privacy Policy Page

WordPress 4.9.6 introduces a setting to designate a specific “Privacy Policy” page. To set an existing page as the Privacy Policy page or create a new Privacy Policy page, go to Settings -> Privacy. When editing the designated Privacy Policy page, a link is shown at the top of the editor to a guide “for recommendations on what content to include, along with policies suggested by your plugins and theme”.

We have added a section to the guide with suggested language to include in your Privacy Policy. At this time, the default text includes the following:

Data Collected to Manage Your Membership

At checkout, we will collect your name, email address, username, and password. This information is used to setup your account for our site. If you are redirected to an offsite payment gateway to complete your payment, we may store this information in a temporary session variable to setup your account when you return to our site.

At checkout, we may also collect your billing address and phone number. This information is used to confirm your credit card. The billing address and phone number are saved by our site to prepopulate the checkout form for future purchases and so we can get in touch with you if needed to discuss your order.

At checkout, we may also collect your credit card number, expiration date, and security code. This information is passed to our payment gateway to process your purchase. The last 4 digits of your credit card number and the expiration date are saved by our site to use for reference and to send you an email if your credit card will expire before the next recurring payment.

When logged in, we use cookies to track some of your activity on our site including logins, visits, and page views.

You should make sure to update this default text based on how you’ve specifically implemented PMPro on your site, what your payment gateway options are, and which PMPro Add Ons your are using. If you are using Add Ons that integrate with third parties (e.g. email marketing services), be sure to mention what information is shared and how. If you are using Add Ons that collect additional information at checkout, be sure to mention what that information is and how it’s used.

The new regulations state that policies should be clear and easy to understand. Avoid using any unnecessary legal jargon. Your Privacy Policy should be easy to find on your site. Place a link to your Privacy Policy in your main navigation and/or footer area.


Terms of Service

In order to require members accept the Privacy Policy when checking out through PMPro, you must set a “Terms of Service” page on the advanced settings tab of the PMPro settings. This will add a section to the checkout page above the submit button that shows the full text of your Privacy Policy along with a checkbox that is required to complete checkout.

While we use the term “Terms of Service” or “TOS” in our settings, your page can be named “Privacy Policy” or anything else. On some sites the Privacy Policy and Terms of Service (or Terms of Use) are separate documents. We recommend combining them into one document or linking each document to each other.

Prior to PMPro version 1.9.5, the TOS checkbox was required but did not store any data to track that agreement. So if you added the TOS sometime after launch, there was no way to tell which of your users actually agreed to the TOS besides checking the date they signed up vs when you published your TOS.

As of PMPro version 1.9.5, we now store a “consent log” for each user marking the post ID and date modified of the TOS page at the time of checkout. This information is linked to and shown on the order in the WP dashboard and on the edit user profile page in the dashboard.

A way to require existing (pre-version 1.9.5 users) to agree to the TOS or require users agree to the TOS again after it has been updated would be a useful feature. We are working on a way to do this with PMPro, and will include it in a future release.


Export Personal Data

The GDPR includes regulations related to the “Right to Access”, which basically is the right for users to request a copy of all personal data a website tracks for them. In WordPress core, this has been implemented as a tool to “Export Personal Data” for any email/user on your site (with most WP setups, it’s possible to comment on a blog post without being a user).

By default, exporting a user’s personal data is a manual process kicked off by a WP admin. You enter an email address into the form to send a request. The user then needs to click a link in that request email to approve the export. Once the link is validated, the admin will have a button to click to send the user their data as a zip file in email, as well as a link to download the zip file directly.

There are some plugins coming out that try to make this process easier, so users can make the request from the frontend of your website without the admin needing to get involved. I believe that there should always be a manual admin step to export the data to enable you to confirm that the request is legitimate. One thing you can do is update your contact form/page to include a subject line suggestion for “Request an Export of Personal Data”, and then manage the rest of the process manually from the Tools -> Export Personal Data page in the dashboard.

Version 1.9.5 of PMPro adds all PMPro-related data into the export. This includes the user’s business address, the expiration date and last 4 digits of their credit card if one was used, their membership history, their order history, and the log of logins/visits/views that PMPro tracks.

Some information is notably excluded from this export. If you use Stripe or Braintree as your payment gateway, we do not share the user’s “customer ID”. In our opinion, this information was generated by your site for your site use and does not constitute “personal data”. We also do not include the “Notes” section of the orders exported. Traditionally the notes section is used by Add Ons for various tracking purposes (e.g. to note an affiliate code used) and may contain sensitive information written by the site owner not intended to be viewed by the customer.

Soon our Add Ons, including Register Helper, will also include their data in these exports.


Erase Personal Data

The GDPR includes regulations related to “Right to be Forgotten”, which basically is the right for users to request that their personal data be deleted from a website. In WordPress core, this has been implemented as a tool to “Erase Personal Data” for any email/user on your site.

Similar to the Export Personal Data tool, by default a WordPress admin must manually start the process to erase a user’s personal data. Again, we suggest adding a subject line suggestion to your contact form for “Request Erasure of Personal Data”, and then handling the rest of the process manually from the Tools -> Erase Personal Data page in the dashboard.

Version 1.9.5 of PMPro adds an “eraser” script. The script deletes some data stored in “user meta”, including the user’s billing address, the expiration date of their credit card, the last 4 digits of their credit card, and the login/visit/view tracking data.

The script does not delete the member history or any orders associated with the user. In our opinions, this information usually needs to be retained for business records. The GDPR does allow for information to be retained at the site owners discretion.

The script also does not cancel any memberships or subscriptions at the gateway. In most situations, you will probably want to do this as well for your members by canceling their membership manually from the edit user page or by deleting the user.

Note that “erasing” a user is not the same as deleting them. Erasing will delete or anonymize certain data about a user based on rules implemented by WP and the plugins you are using. Deleting a user will be a harsher action that will delete all information stored about the user. When a user is deleted (vs erased), PMPro will delete the user’s membership history and will cancel their membership and any subscriptions stored at the payment gateway. Any orders associated with the user will be retained, but unlinked from that user.


In Summary

Update to WordPress 4.9.6. Update to PMPro 1.9.5. Take this time to create or update your privacy policy and designate that page as the Privacy Policy to WP and PMPro by going to Settings -> Privacy and Memberships -> Advanced Settings respectively. Update your contact form to mention it’s possible to request a data export or for personal data to be erased.

Let us know if you have any questions about these new privacy features, the GDPR in general, or other issues we didn’t address in this post. We will provide updates to our blog here as we update our core plugin and add ons as new features become available.

Capture the User’s First and Last Name at Membership Checkout

By default, the Paid Memberships Pro membership checkout does not request the user’s first and last name. If you’d like to capture this information for your members, we have a very simple Add On that instantly adds the fields.

View the Add On


How it Works

After installing and activating the Add On, the Membership Checkout page will automatically include a field for “First Name” and “Last Name” below the password fields in the “Account Information” area of checkout.


Watch the Installation and Activation Demo


View the Add On
 

This entry was posted by Jason Coleman in Add Ons and tagged . Bookmark the permalink. Last updated: . Titled Capture the User’s First and Last Name at Membership Checkout

BuddyPress Seminar April 11th and 12th, 11am to 3pm EDT

On April 11th and 12th from 11am to 3pm EDT we will host a two-day online seminar on using BuddyPress with PMPro.

We will field questions on using the two plugins via live video stream and offer hands-on help as you set up BuddyPress. Join the whole seminar or pop in for an hour or two. Our goal is to help as many of you as possible to make full use of these plugins and learn how you are using BuddyPress so that we can improve our platform.


You can prepare for the seminar by setting up a development site either on your web host or a local site created via Local by Flywheel. Be sure to install and activate these plugins: Paid Memberships ProBuddyPressand our BuddyPress Integration Add On.

The seminar includes a space for chat, but if you’d like to be included in our Slack channel, please request an invitation via the Contact Form.

A link to access Day 2 of the seminar will be posted below for our support-level members.

Thanks! I look forward to helping as many of you as possible with BuddyPress and Paid Memberships Pro.

This entry was posted by Jason Coleman in Add Ons, Videos and tagged . Bookmark the permalink. Last updated: . Titled BuddyPress Seminar April 11th and 12th, 11am to 3pm EDT