Plugins

WP Ghost and Breeze Cache Plugin Setup Guide

WP Ghost is fully compatible with Breeze by Cloudways. Breeze is a free WordPress cache plugin that handles page caching, file minification, Gzip compression, browser caching, and database optimization. To use both plugins together while keeping WP Ghost’s path security intact, you need to enable Breeze’s minification, exclude your custom WP Ghost paths from caching, and turn on WP Ghost’s Change Paths in Cache Files option. This guide walks through the complete setup in 4 steps.

Why Breeze Needs WP Ghost Configuration

Cache plugins like Breeze save pre-rendered HTML files containing the actual paths to your CSS, JavaScript, plugins, themes, and uploads. When WP Ghost changes these paths, the live page output uses the new paths – but cached HTML files still reference the old WordPress defaults until they’re regenerated. Without coordinating Breeze and WP Ghost, your visitors will see cached pages exposing /wp-content/plugins/ and /wp-content/themes/ even though WP Ghost is supposedly hiding them. Additionally, your custom login and admin paths must be excluded from caching, otherwise Breeze will serve cached versions of pages that should always be dynamic.

Step 1: Install Both Plugins

Install and activate both Breeze and WP Ghost. The recommended order is Breeze first, then WP Ghost – this ensures Breeze’s caching is stable before WP Ghost starts processing cached files.

Step 2: Enable Breeze Minification

Minification reduces the size of CSS, JS, and HTML files by removing whitespace and combining files. This improves load times and works correctly with WP Ghost’s path security.

  1. Go to Breeze > Basic Options.
  2. Enable Minify HTML, Minify CSS, and Minify JS.
  3. Enable the Group CSS and Group JS options to combine files where possible.
  4. Click Save Changes.

Step 3: Exclude Custom Paths from Caching

Your WP Ghost custom login and admin paths must never be cached. Caching them can break login functionality, expose session tokens, or serve stale dynamic content. Add them to Breeze’s exclusion list.

  1. Go to Breeze > Advanced Options.
  2. Find the Never Cache the following Pages field.
  3. Add your custom paths, one per line:
/your-custom-login-path
/your-custom-admin-path
/cart
/checkout
/my-account
  1. Replace your-custom-login-path and your-custom-admin-path with the actual paths you set in WP Ghost.
  2. Click Save Changes.

WooCommerce sites: Always exclude /cart, /checkout, and /my-account from caching. These pages contain user-specific data and should never be cached. Breeze typically excludes these by default, but verify they’re in your exclusion list. See WP Ghost with WooCommerce for full WooCommerce security configuration.

Step 4: Enable Change Paths in Cache Files in WP Ghost

Now tell WP Ghost to rewrite the paths inside Breeze’s cached files. This is the critical step that ensures cached HTML pages reference your custom WP Ghost paths instead of the WordPress defaults.

  1. Go to WP Ghost > Advanced > Tweaks.
  2. Find Change Paths in Cache Files.
  3. Toggle it ON.
  4. Click Save.

WP Ghost runs a background cron job that processes cached files and updates the paths. For complete configuration details, see Change Paths in Cached Files.

Important: After enabling this option, clear the Breeze cache so the next page generation creates fresh cached files with the updated paths. Go to Breeze > Purge All Cache in the WordPress admin bar or under Settings. Without clearing, your old cached files will continue serving the original paths until they expire.

Verify the Setup

  1. Visit your site in an incognito/private browser window so you get a freshly cached version.
  2. Right-click and select View Page Source.
  3. Search for wp-content/plugins and wp-content/themes. They should NOT appear – you should see your custom WP Ghost paths instead.
  4. Test your custom login URL – it should load normally.
  5. Test the default /wp-login.php – it should return 404.
  6. Run a Security Check in WP Ghost to confirm all settings are applied.

Troubleshooting

Cached pages still show wp-content/plugins paths

The Breeze cache hasn’t been cleared since enabling Change Paths in Cache Files in WP Ghost. Click the Breeze icon in the WordPress admin bar and select Purge All Cache. Visit a few pages while logged out to regenerate the cache with the updated paths.

Login form behaves strangely or fails after caching

Your custom login path isn’t excluded from caching. Go to Breeze > Advanced Options > Never Cache the following Pages and add your custom login path. Save and clear the Breeze cache.

Site looks broken after enabling Group CSS/JS

This isn’t a WP Ghost issue – it’s a common Breeze problem when JS/CSS files have dependencies that get combined out of order. In Breeze Basic Options, exclude the problematic files from grouping or disable Group JS/CSS while keeping minification enabled. Test which files cause the issue by enabling them one at a time.

WooCommerce cart shows wrong items or session issues

Cart, checkout, and account pages aren’t excluded from caching. Add /cart, /checkout, and /my-account to Breeze’s Never Cache the following Pages list. Also enable Cache for Logged-in Users = OFF in Breeze Advanced Options to prevent caching dynamic user content.

Locked out after configuration

Use the Safe URL parameter to bypass WP Ghost temporarily. If that doesn’t work, see the Emergency Disable guide to recover access via FTP.

Frequently Asked Questions

Which plugin should I install first – WP Ghost or Breeze?

Either order works, but the recommended sequence is: install Breeze first, configure caching and minification, then install WP Ghost and enable Change Paths in Cache Files. This ensures Breeze’s settings are stable before WP Ghost starts processing cached files.

Do I need to clear Breeze cache every time I save WP Ghost settings?

Yes, whenever you change paths in WP Ghost. Cached files contain the old paths until regenerated. Clear the Breeze cache after any WP Ghost path change to ensure visitors see the updated paths immediately.

Is Breeze only for Cloudways hosting?

No. Breeze is developed by Cloudways but works on any WordPress hosting (Cloudways, SiteGround, Bluehost, GoDaddy, self-hosted, etc.). It’s a free plugin available from the WordPress directory and integrates with any hosting environment.

What if I use a CDN with Breeze?

If you use Breeze with a CDN (Cloudflare, BunnyCDN, KeyCDN), you also need to purge the CDN cache after enabling WP Ghost path changes. The CDN serves cached versions of your files from edge servers, which won’t reflect the new paths until purged.

Does this work with WooCommerce?

Yes. WP Ghost is fully compatible with WooCommerce and Breeze works with WooCommerce too. Make sure Breeze excludes cart, checkout, and account pages from caching (these are excluded by default in recent Breeze versions).

Does WP Ghost modify Breeze files?

No. WP Ghost doesn’t modify Breeze’s plugin files or any WordPress core files. The Change Paths in Cache Files option processes the output before Breeze saves it to disk, ensuring cached files contain the correct paths from the start.

WP Ghost with cache and performance plugins:

John Darrel

Change the WordPress Database Prefix for Security

Replace the default wp_ database prefix with a random one to protect against SQL injection…

1 year

Customize WordPress Uploads Directory | WP Ghost

Change the WordPress uploads directory path with WP Ghost (rewrite rules, no files moved) or…

1 year

WP Ghost and WP Rocket Cache Setup Guide

Configure WP Ghost with WP Rocket cache. Enable file optimization, Change Paths in Cache Files.…

1 year

Why is website security important?

https://youtu.be/6ylhojSi-_E In this video, we’ll explore why website security matters and what can happen if…

1 year

Is WordPress Website Easily Hacked?

The security of your WordPress site depends on multiple factors, such as the strength of…

1 year

Set Up WordPress 2FA with Mobile Authenticator Apps

Step-by-step guides to connect WP Ghost 2FA with Google Authenticator, Authy, Microsoft Authenticator, or LastPass.…

1 year