=== Anti-Cache Emergency Kit === Contributors: fernandot, ayudawp Tags: cache, debug, development, maintenance, troubleshooting Requires at least: 5.0 Tested up to: 6.8 Requires PHP: 7.4 Stable tag: 3.0.2 License: GPL2 License URI: https://www.gnu.org/licenses/gpl-2.0.html Instantly disables all caches, enables debug mode, and provides maintenance mode for safe WordPress development and troubleshooting. == Description == **Anti-Cache Emergency Kit** is the ultimate tool for WordPress developers and designers who need to bypass all caching mechanisms during development, testing, or troubleshooting. **⚠️ Development Tool Only - Do NOT leave active on production sites!** = Key Features = 🔧 **Comprehensive Cache Management** * Automatically detects and flushes major cache plugins * **Temporarily deactivates cache plugins during development** (user can easily reactivate) * Clears object cache (Redis, Memcached) * Clears OPcache and hosting-specific caches * Prevents browser caching for administrators 🐛 **Debug Mode Activation** * **Safely modifies wp-config.php using WordPress Filesystem API** * Automatically enables WP_DEBUG, WP_DEBUG_LOG, WP_DEBUG_DISPLAY * Shows PHP errors and warnings for troubleshooting * **Reverts all wp-config.php changes on deactivation** 🛠️ **Maintenance Mode** * Optional simple maintenance screen for non-logged users * Prevents visitors from seeing development errors * Quick toggle from admin bar * Customizable maintenance message 👨‍💻 **Admin-Only Impact** * All anti-cache measures only affect logged-in administrators * Regular visitors see the normal cached site (unless maintenance mode is enabled) * Perfect for live site development 📊 **Smart Management Panel** * View current status and active features * **Easy one-click reactivation of cache plugins** * Manual cache clearing options * Clear overview of what was changed = Supported Cache Plugins = * WP Rocket * W3 Total Cache * WP Super Cache * WP Fastest Cache * LiteSpeed Cache * SiteGround Optimizer * WP Optimize * Hummingbird (WPMU DEV) * Breeze (Cloudways) * Autoptimize * Cache Enabler * Surge * Redis Object Cache = Supported Hosting Caches = * SiteGround hosting cache * Cloudflare (when plugin is active) * Generic hosting cache systems = How It Works = 1. **Activation**: Automatically flushes and deactivates all detected cache plugins 2. **Debug Mode**: Enables WordPress debug mode in wp-config.php 3. **Anti-Cache Headers**: Sends no-cache headers to admin users 4. **Asset Versioning**: Adds random versions to CSS/JS files for admins 5. **Maintenance Mode**: Optional simple screen for non-logged users 6. **Deactivation**: Reverts all changes and disables debug mode = Use Cases = * Testing theme or plugin updates * Troubleshooting white screens or errors * Developing new features without cache interference * Checking design changes in real-time * Debugging PHP errors and warnings * Safe development on live sites = Security & Safety = * All changes only affect administrator users * Automatic reversion of changes on deactivation * Secure nonce verification for all actions * No database modifications beyond options * Compatible with WordPress multisite == Installation == 1. Upload the plugin files to `/wp-content/plugins/anticache/` directory 2. Activate the plugin through the 'Plugins' menu in WordPress 3. The plugin will automatically flush caches and enable debug mode 4. Visit Settings > Anti-Cache Kit to manage options 5. **Important**: Deactivate when finished developing! == Frequently Asked Questions == = Is this safe to use on a live website? = Yes, but with important caveats: * Only administrators are affected by the anti-cache measures * Regular visitors continue to see the cached site normally * Use maintenance mode to hide development from visitors * Always deactivate when finished developing * Never leave active long-term on production sites = Which cache plugins are supported? = The plugin supports all major WordPress cache plugins including WP Rocket, W3 Total Cache, WP Super Cache, LiteSpeed Cache, SiteGround Optimizer, WP Optimize, Hummingbird, Breeze, Autoptimize, Cache Enabler, Surge, Redis Object Cache, and many more. See the full list in the description. = What happens to my cache plugins? = **Cache plugins are temporarily deactivated for development purposes only.** This is necessary to prevent cache interference while you're making changes to your site. The plugin: * Only deactivates cache plugins that were active when Anti-Cache Kit was activated * Keeps a record of which plugins were deactivated * Provides easy one-click reactivation via Tools > Anti-Cache Kit * Allows manual reactivation from the standard WordPress Plugins page * **Does not delete or modify cache plugin files or settings** This temporary deactivation is essential for the plugin's core functionality - without it, cached content would prevent you from seeing your changes immediately. = Does it work with hosting cache systems? = Yes! The plugin also clears hosting-specific caches from providers like SiteGround, and integrates with Cloudflare when their plugin is active. It also clears object caches (Redis, Memcached) and OPcache. = Can I customize the maintenance page? = Yes, developers can use the `ayudawp_anticache_maintenance_data` filter to customize the maintenance page appearance, messaging, colors, and content. = Will this affect my site's performance? = Only for administrator users while the plugin is active. Regular visitors are unaffected (unless maintenance mode is enabled). The plugin is designed for temporary development use only. = What if I forget to deactivate it? = The plugin shows prominent warnings in the admin area reminding you to deactivate it. However, it's designed to be safe even if left active, as it only affects administrators. = Does it work with object caching? = Yes, it clears Redis, Memcached, and other object cache systems, as well as OPcache when available. = Can I use it on WordPress multisite? = Yes, the plugin is compatible with WordPress multisite networks. = How do I know if it's working? = Check the "How to Test Features" section below for detailed testing instructions. = What if my cache plugin isn't supported? = Most major cache plugins are supported. If yours isn't, you can manually deactivate it before activating Anti-Cache Kit, or contact us to add support for your specific plugin. = Can I reactivate cache plugins without deactivating Anti-Cache Kit? = Yes! Go to Tools > Anti-Cache Kit and use the "Reactivate All Cache Plugins" button. However, this may hide your development changes again. = Does it work with CDN services? = The plugin handles Cloudflare when the official plugin is active. For other CDNs, you may need to manually clear their caches from their respective control panels. = What happens to my debug logs? = Debug mode creates logs in `/wp-content/debug.log`. The plugin automatically enables logging, so check this file for any PHP errors or warnings during development. = Can I use this for debugging JavaScript or CSS issues? = Yes! The plugin prevents browser caching of CSS/JS files for administrators and adds random versions to force reloading, making it perfect for frontend debugging. == How to Test Plugin Features == After activating the plugin, verify each feature is working correctly: = Debug Mode Testing = 1. **Check wp-config.php**: Look for the debug constants added by the plugin 2. **Trigger a PHP error**: Add `` to a theme file 3. **Verify error display**: You should see PHP errors on the frontend (admin only) 4. **Check debug log**: Look for `/wp-content/debug.log` file creation 5. **Test error logging**: Errors should be logged to the debug.log file = Cache Plugin Deactivation Testing = 1. **Before activation**: Note which cache plugins are active in Plugins page 2. **After activation**: Verify cache plugins are deactivated 3. **Check admin notice**: Should list which plugins were deactivated 4. **Visit settings page**: Go to Tools > Anti-Cache Kit to see deactivated plugins list 5. **Test reactivation**: Use the "Reactivate All Cache Plugins" button = Browser Cache Prevention Testing = 1. **Make a CSS change**: Modify your theme's style.css 2. **Hard refresh**: Ctrl+F5 or Cmd+Shift+R should show changes immediately 3. **Check page source**: Look for random version numbers on CSS/JS files 4. **Verify headers**: Use browser dev tools to check for no-cache headers 5. **Test as visitor**: Log out - visitors should still see cached version = Object Cache Testing = 1. **Install Redis/Memcached**: If using object caching 2. **Check cache status**: Use Redis CLI or monitoring tools 3. **Verify clearing**: Cache should be flushed when plugin activates 4. **Manual clear**: Test the "Manual Cache Clear" button in settings = Maintenance Mode Testing = 1. **Enable maintenance**: Go to Tools > Anti-Cache Kit and enable maintenance mode 2. **Test as visitor**: Open an incognito/private window and visit your site 3. **Verify maintenance page**: Should see the maintenance screen 4. **Test as admin**: Logged-in admins should bypass maintenance mode 5. **Quick toggle**: Use the admin bar toggle for quick on/off = Hosting Cache Testing = 1. **SiteGround users**: Check SG Optimizer cache is cleared 2. **Cloudflare users**: Verify Cloudflare cache is purged (if plugin installed) 3. **Manual verification**: Check your hosting control panel for cache status 4. **Performance testing**: Use GTmetrix or similar to verify cache clearing = Overall Functionality Testing = 1. **Make theme changes**: Modify CSS, PHP, or JavaScript files 2. **Check immediate visibility**: Changes should be visible without hard refresh 3. **Test error display**: Broken code should show errors immediately 4. **Verify admin-only**: Log out to confirm visitors see normal cached site 5. **Check HTML comments**: Look for "AyudaWP Anti-Cache Kit" comment in page source = Testing Checklist = - Cache plugins are deactivated and listed in admin - Debug mode is enabled (WP_DEBUG, WP_DEBUG_LOG, WP_DEBUG_DISPLAY) - CSS/JS changes are immediately visible to admins - Random versions are added to asset URLs for admins - PHP errors are displayed to admins only - Maintenance mode works for non-logged users - Admin bar toggle functions correctly - Settings page is accessible at Tools > Anti-Cache Kit - Manual cache clear button works - Plugin reactivation feature works - HTML comment appears in page source for admins - No-cache headers are sent to admin users only **If any feature isn't working, check the debug.log file for error messages or contact support.** == Screenshots == 1. Plugin activation notice showing all performed actions 2. Admin panel with current status and quick actions 3. Maintenance mode screen for non-logged users 4. Admin bar toggle for maintenance mode 5. Deactivated plugins management interface == Changelog == = 3.0.2 = * Inline styles in maintenance file = 3.0.1 = * Added proper WordPress coding standards compliance = 3.0 = * Added comprehensive admin management panel * Added optional maintenance mode for non-logged users * Added support for more cache plugins (WP Optimize, Hummingbird, Breeze, Autoptimize) * Added object cache clearing (Redis, Memcached, OPcache) * Added hosting-specific cache clearing * Added admin bar toggle for maintenance mode * Improved security with proper nonce verification * Enhanced plugin reactivation functionality * Better error handling and logging * Improved internationalization support * Added proper WordPress coding standards compliance * Enhanced UI/UX with modern admin interface = 2.4 = * Improved cache plugin detection * Enhanced debug mode handling * Better error reporting * Added more cache plugin support = 2.0 = * Added asset versioning for administrators * Improved wp-config.php handling * Enhanced plugin deactivation process * Better compatibility with newer WordPress versions = 1.0 = * Initial release * Basic cache plugin detection and deactivation * Debug mode activation * Anti-cache headers for administrators == Upgrade Notice == = 3.0 = Major update with admin panel, maintenance mode, and support for many more cache plugins. Recommended upgrade for all users. = 2.4 = Improved compatibility and cache plugin support. Recommended upgrade. == Developer Information == = Hooks and Filters = * `ayudawp_anticache_maintenance_data` - Filter to customize maintenance page data * `ayudawp_anticache_cache_plugins` - Filter to modify the list of supported cache plugins = Constants = * `AYUDAWP_ANTICACHE_VERSION` - Plugin version * `AYUDAWP_ANTICACHE_PLUGIN_DIR` - Plugin directory path * `AYUDAWP_ANTICACHE_PLUGIN_URL` - Plugin directory URL = Code Example = Customize maintenance page: `add_filter( 'ayudawp_anticache_maintenance_data', function( $data ) { $data['heading'] = 'Custom Maintenance Message'; $data['message'] = 'We are updating our awesome website!'; $data['accent_color'] = '#ff6b6b'; return $data; });` == Support == For support, feature requests, or bug reports, please visit: * [Official website](https://servicios.ayudawp.com/) * [WordPress support forum](https://wordpress.org/support/plugin/anticache/) * [YouTube channel](https://www.youtube.com/AyudaWordPressES) * [Documentation and tutorials](https://ayudawp.com/) == Contributing == This plugin is developed following WordPress coding standards and best practices. Contributions are welcome via the WordPress.org plugin repository.