Install
This is the repository archive. It installs, but the folder name will carry the branch suffix and updates will not flow.
Install straight from GitHub with WP-CLI:
wp plugin install https://github.com/polylang/object-cache-annihilator/archive/refs/heads/master.zipOn Packagist as wpsyntex/object-cache-annihilator:
composer require wpsyntex/object-cache-annihilatorA 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.
Features
- 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
Requirements
- WordPress 6.2 or higher
- PHP 7.2 or higher
- Write permissions to the
wp-contentdirectory
Installation
- Follow the instructions in the Distribution section to build the plugin
- Upload the plugin files to the
/wp-content/plugins/object-cache-annihilatordirectory - Activate the plugin through the 'Plugins' menu in WordPress
Usage
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)
Development
Setup
- Clone the repository
- Run
composer installto install dependencies - Run
npm installto install development dependencies
Development Environment
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
Code Quality
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
Distribution
To create a distribution package:
npm run dist
This will:
- Clean up development files
- Install production dependencies
- Create a distribution package in the
distdirectory
Advanced Usage
Process-specific Cache Management
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.
License
This plugin is licensed under the GPL v3 or later.