WP Engine offers “hassle-free WordPress Hosting”. They offer a cloud-based, fully managed solution built specifically for hosting WordPress sites. Click here to see what they have to offer*.
Sign up for the Professional Package
Membership site owners should sign up for their “Professional” package or higher to be able to run Paid Memberships Pro properly. Specifically, you will need an SSL certificate and the added capacity to handle non-cached membership pages.
Add Exceptions to the WP Engine Page Caching
WP Engine uses fairly aggressive caching techniques. This is great. It speeds up your site. However, unless accounted for, it will cause issues on your members pages. Once your site is setup, contact 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.
Here 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. So you shouldn’t 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.