WP Engine offers “hassle-free WordPress Hosting”. They offer a cloud-based, fully managed solution built specifically for hosting WordPress sites.
This hosting documentation guide will walk you through the process of setting up and configuring your WP Engine website to work with Paid Memberships Pro.
Choosing a WP Engine Hosting Package
Membership site owners can sign up for any plan at WP Engine—all plans meet the minimum requirements to run a Paid Memberships Pro membership site.
Hosting Setup Instructions
These steps assume that you have already purchased a hosting plan at WP Engine, set up your WordPress site, and completed Paid Memberships Pro initial setup.
Caching
Caching is a key component to help you optimize your website, but there are some considerations about caching that can cause issues on a membership website running PMPro.
WP Engine uses fairly aggressive caching techniques. Which is great for speeding up your site, but it will cause issues on your members pages. To prevent this, you will need to set exceptions to page caching on your site.
Add “Exceptions” to Page Cache
Once your site is setup, contact WP Engine support and ask them to add “exceptions” to the “page cache” on your site. Specifically, you should exclude:
- All of the pages generated by Paid Memberships Pro:
/membership-account/
… - The URL to your IPN Handler, Webhook, or Silent Post URL depending on your gateway. This can be found on the bottom of the PMPro Payment Settings page.
- Any page where you use a “membership” shortcode to show certain content to members or non-members.
- Any page where you use the
pmpro_hasMembershipLevel()
function to show certain content to members or non-members. - Any page that should only be viewed by logged in members. E.g. if you have a
/members/
section and aren’t showing excerpts to non-members.
Below is an example request you can send to WP Engine support to have the exceptions added. Make sure that you swap out these URLs for your actual URLs.
Hello,
I am using the Paid Memberships Pro plugin on my site hosted with WP Engine. In order to properly process checkouts and protect member content, can you please add the following URLs to the exception list for the page cache?
https://www.paidmembershipspro.com/membership-account/*
https://www.paidmembershipspro.com/wp-admin/admin-ajax.php?action=authnet_silent_post
{add any other URLs here}
Thanks!
Note that by default, WP Engine will not serve cached pages for logged-in members. You should not have to add all member content to the exception list, just pages that might show dynamic content to logged out users. In general, you don’t want to add an exception unless you notice an issue on that page.
If you feel that you would need every page excluded, then you should consider a dedicated hosting plan under a different provider.
If you would like to discuss how to support caching or otherwise improve performance on your highly trafficked PMPro site, please contact us for a consultation.
We will update this page if these recommendations change and as we add specific integration with WP Engine to run your PMPro site smoothly.