NivoSync
InloggenNu kopen

Cache plugin compatibility

Run NivoSync alongside LiteSpeed Cache, WP Rocket, W3 Total Cache and other full-page caches โ€” what works out of the box, and which optimisation toggles to avoid.

5 min readUpdated 2026-07-20

NivoSync is built to work with full-page cache plugins out of the box. The diamond catalogue and single diamond pages are rendered visitor-neutral and are safe to cache; per-visitor details (wishlist, compare, view mode, fresh security tokens) are applied in the browser after the page loads. NivoSync automatically marks its genuinely dynamic pages โ€” the Ring Builder, the compare page and the wishlist page โ€” as non-cacheable using the WordPress DONOTCACHEPAGE standard, which every major cache plugin honours.

That said, some optimisation features that ship alongside cache plugins rewrite your site's HTML, CSS and JavaScript โ€” and aggressive settings there can break any dynamic plugin, NivoSync included. This page lists exactly which settings to avoid and why.

Safe to enable

FeatureNotes
Full-page cache (any TTL)NivoSync refreshes its security tokens client-side, so even week-long TTLs are fine.
Browser cacheSafe.
HTML MinifySafe.
CSS MinifySafe.
Object cache (Redis/Memcached)Safe if your host actually provides Redis or Memcached โ€” confirm before enabling. Common pitfall: when your host gives you a UNIX socket path (e.g. /home/user/.redis/redis.sock), put it in the Host field and set Port to 0 โ€” leaving the default port causes a failed connection. Always check "Connection Test: Passed" before switching the object cache on.
Cache crawler / preloadSafe. NivoSync's dynamic pages announce themselves as non-cacheable, so crawlers skip them.

Settings that will cause problems

Setting (LiteSpeed name)Also known asWhat breaks
Load JS Deferred: Delayed"Delay JavaScript execution" (WP Rocket)The diamond catalogue, filters and Ring Builder stay frozen until the visitor clicks or scrolls. Exclude the NivoSync script handles (ns-app, ns-wishlist, ns-compare, ns-view-toggle, theme scripts) or turn the feature off.
JS Combine"Combine JavaScript files"Can break the load order between NivoSync's configuration data and its scripts, leaving the catalogue non-functional. Exclude NivoSync scripts or keep it off.
Generate UCSS / Unique CSS"Remove unused CSS" (WP Rocket)UCSS keeps only the CSS selectors found in the initial HTML. Diamond cards loaded via filtering or "load more", the quick-view modal and the compare bar arrive later via AJAX โ€” their styles get stripped and they render unstyled. Exclude NivoSync pages/stylesheets or keep UCSS off.
Guest Mode + Guest Optimizationโ€”Serves a generic cached copy to first-time visitors that can bypass NivoSync's cache exclusions. Keep off, or test your Ring Builder flow thoroughly after enabling.
Lazy Load Imagesโ€”Injecting lazy-load placeholders inside the 360ยฐ viewer breaks it. Add .ns-360-viewer (and your gallery containers) to the lazy-load exclusion list.
DB Optimizer โ†’ "Clean All Transients"โ€”Guest Ring Builder sessions are stored as WordPress transients. Purging all transients wipes the ring selections of every visitor currently building a ring. "Clean expired transients" is fine.

If you want a known-good starting point (this is what we run on our own demo sites):

  • Cache โ†’ [1] Cache: Enable Cache ON ยท Cache Logged-in Users OFF ยท Cache Commenters OFF ยท Cache REST API OFF ยท Cache Login Page ON ยท Cache Mobile OFF
  • General: Guest Mode OFF ยท Guest Optimization OFF
  • Page Optimization: everything OFF (or enable only CSS/HTML Minify)
  • Object cache: OFF unless your host confirms Redis/Memcached is available (ask for the host/port or socket path first)

Keep your Nivoda sync running

Full-page caching means anonymous visits often don't execute PHP, which can starve WordPress's built-in cron (wp-cron) โ€” and NivoSync's scheduled diamond sync runs on it. If you rely on page caching, set up a real server cron:

  1. Add define( 'DISABLE_WP_CRON', true ); to wp-config.php.
  2. Create a server cron job (cPanel โ†’ Cron Jobs) hitting https://yoursite.com/wp-cron.php?doing_wp_cron every 5โ€“15 minutes.

If something looks broken

  1. Purge all caches first. Most reports after changing cache settings are just a stale cached copy.
  2. Disable the optimisation features above one by one (JS Delay โ†’ JS Combine โ†’ UCSS) and re-test after purging each time.
  3. Still stuck? Contact support@nivosync.com with your cache plugin name and a copy of its settings export โ€” we can spot the conflicting toggle quickly.