A simple file-based object cache implementation for WordPress, designed for testing purposes. This plugin provides a convenient way to test and debug WordPress object cache functionality.
- File-based object cache implementation
- Easy enable/disable through admin bar
- Cache flushing capabilities
- Support for cache groups and expiration
- Admin interface for cache management
- WordPress 6.2 or higher
- PHP 7.2 or higher
- Write permissions to the
wp-content
directory
- Follow the instructions in the Distribution section to build the plugin
- Upload the plugin files to the
/wp-content/plugins/object-cache-annihilator
directory - Activate the plugin through the 'Plugins' menu in WordPress
Once activated, you'll see a new menu item in the admin bar:
- Object Cache ☠️: Main menu item
- Die 🔫: Disable the object cache
- Resurrect 👻: Enable the object cache
- Flush 🚽: Clear all cached data (only available when cache is enabled)
- Clone the repository
- Run
composer install
to install dependencies - Run
npm install
to install development dependencies
The plugin includes a WordPress development environment using @wordpress/env
. To start it:
npm run env:start
Other available commands:
npm run env:stop
: Stop the environmentnpm run env:clean
: Clean the environmentnpm run env:start:fresh
: Start a fresh environmentnpm run env:composer
: Run composer commands in the environment
The plugin uses several tools to maintain code quality:
- PHPCS for coding standards
- PHPStan for static analysis
- Composer for dependency management
Available commands:
composer cs
: Run coding standards checkcomposer cs-fix
: Fix coding standards issuescomposer stan
: Run static analysis
To create a distribution package:
npm run dist
This will:
- Clean up development files
- Install production dependencies
- Create a distribution package in the
dist
directory
For managing the cache within a single PHP process (without affecting the drop-in file):
global $wp_object_cache;
// Enable cache for current process
$wp_object_cache->resurrect();
// Disable cache for current process
$wp_object_cache->die();
// Flush cache for current process
$wp_object_cache->flush();
This approach is useful when you need to temporarily enable/disable the cache for specific operations without affecting the global cache state.
This plugin is licensed under the GPL v3 or later.