Hi @derlehre,
They work fine together. You only need to keep a few dynamic pages out of the cache; everything else (course archive, single courses, blog, home) can be cached normally.
WP Fastest Cache → Settings
- Tick “Don’t show the cached version for logged-in users”. This is the important one students are logged in while taking a course.
- Leave Minify JS and Combine JS off. Masteriyo already ships minified files.
WP Fastest Cache → Exclude
Under Exclude Pages, add three rules with Starts With:
/account (Masteriyo account / dashboard)
/learn (course player)
/checkout (Masteriyo checkout)
Confirm those paths in Masteriyo → Settings → General → Pages if you renamed them. No rules are needed for the WooCommerce cart, checkout or my-account pages; WP Fastest Cache excludes those itself.
Under Exclude Cookies, add one rule: Contains → woocommerce_items_in_cart. WooCommerce ties a visitor’s security tokens to their cart session, so without this one shopper’s token can end up cached and served to everyone.
Also, keep the cache timeout at 10 hours or less; those tokens expire after about twelve.
CDN
If the CDN only serves static files (the CDN tab in WP Fastest Cache), nothing more is needed.
If it also caches HTML (“Cache Everything” or similar), set those paths to Bypass Cache:
/account* /learn* /checkout* /cart* /my-account*
/wp-json/* /wp-admin/* /wp-login.php
Also bypass whenever the cookie wordpress_logged_in_ is present, and don’t enable “Ignore origin Cache-Control” on those paths. On Cloudflare, leave Rocket Loader off; it reorders scripts and often blanks the dashboard or player.