Transient Cleaner
Clean expired transients from your options table. The original and best! Transient housekeeping was added to the core of WordPress after version 5.8. However, I have decided to open up this plugin to all versions to allow for manual transient cleaning. Longer term I am working on a new version of the plugin, designed specifically for all WordPress releases. Tested up to PHP 8.2 Fully complies with WordPress coding standards Compliant with the stronger WordPress VIP coding standards, as well as compatibility with their platform Community plugin – visit the Github page to get involved with the latest code development, request enhancements and report issues “Transients are a simple and standardized way of storing cached data in the WordPress database temporarily by giving it a custom name and a timeframe after which it will expire and be deleted.” Unfortunately, expired transients only get deleted when you attempt to access them. If you don’t access the transient then, even though it’s expired, WordPress will not remove it. This is a known “issue” but due to reasons, which are explained in the FAQ, this has not been adequately resolved. Why is this a problem? Transients are often used by plugins to “cache” data (my own plugins included). Because of this it means that expired data can be left and build up, resulting in a bloated database table. Meantime, this plugin is the hero that you’ve been waiting for. Simply activate the plugin, sit back and enjoy a much cleaner, smaller options table. It also adds the additional recommendation that after a database upgrade all transients will be cleared down. The Settings Screen Within Administration -> Tools -> Transients an options screen exists allowing you to tweak when you’d like cleaning to happen, including the ability to perform an ad-hoc run, and when you’d like the to be automatically scheduled. You can even request an optimization of the options table to give your system a real “pep”! Running in Lite mode A “lite” mode is available. By activating this the options screen will no longer appear and default settings will be used. The advantage? Improved performance to Admin and, especially if you’re running multi-site, no chance of anybody “tinkering” with the settings. To activate, use the following… define( 'TC_LITE', true ); This should be added to your wp-config.php file. Using hooks If you’re the type of odd person who likes to code for WordPress (really?) then I’ve added a couple of hooks so you can call our rather neat cleaning functions… housekeep_transients – this will clear down any expired transients clear_all_transients – this will remove any and all transients, expired or otherwise Acknowledgements I’d like to thank WordPress Developer Andrew Nacin for his early discussion on this. Also, I’d like to acknowledge the useful article at Everybody Staze for ensuring the proposed solution made sense, and W-Shadow.com for the cleaning code. Iconography is courtesy of the very talented Janki Rathod.
Top keywords
- transients10×2.00%
- wordpress8×1.60%
- expired6×1.20%
- options5×1.00%
- cleaning4×0.80%
- table4×0.80%
- added3×0.60%
- code3×0.60%
- data3×0.60%
- database3×0.60%
- expired transients3×0.60%
- options table3×0.60%
Warmer – Cache Warmer and Cache Preload Crawler
Warmer is a WordPress cache warmer and cache preload crawler that visits your site URLs on a schedule so page cache can be generated before real visitors arrive. Most caching plugins create cached pages only after a URL is requested. That means the first visitor after a cache purge, cache expiration, deployment, or content update may hit a slower uncached page. Warmer helps solve that cold-cache problem by crawling selected URLs in the background and warming the cache ahead of time. Use Warmer to warm posts, pages, archives, media attachment pages, and supported custom post types. You control the schedule, URL sources, request delay, timeout behavior, and diagnostics from the WordPress admin. What Warmer does Warms page cache by visiting selected site URLs Preloads cache on a schedule using WordPress cron Crawls posts, pages, category archives, tag archives, media attachment pages, archives, and supported custom post types Provides manual start and stop controls Shows crawl status, success counts, failure counts, and downloadable logs Includes diagnostics for HTTP requests, URL sources, scheduler status, and server compatibility Supports automation workflows with webhooks and WP-CLI Saves settings automatically with Ajax and top-right confirmation notices Works alongside caching systems that build cache when a page is requested Why use a cache warmer? A caching plugin can make cached pages fast, but the cache usually needs to exist first. After a purge or expiration, the first real visitor may be the one who triggers cache generation. Warmer creates those first visits automatically, helping reduce cold-cache page loads and keeping important URLs ready for visitors. Warmer is useful after: Cache purges or cache expiration Publishing or updating content Theme, plugin, or deployment changes Low-traffic periods where pages may fall out of cache Scheduled maintenance Landing page, archive, and custom post type updates URL sources Choose which parts of your site should be warmed: Posts Pages Category archives Tag archives Media attachment pages Archive pages Supported custom post types Request controls Fine-tune cache warming behavior for your hosting environment: Page timeout Connection timeout Request delay Retry attempts User-Agent override Redirect handling SSL certificate verification Manual start and stop controls URL source testing Start with conservative delay and timeout settings, then adjust based on your server response time, cache behavior, and hosting limits. Logging and diagnostics Warmer includes visibility tools so you can understand what happened during each cache warming run: Crawl status tracking Success, failure, redirect, average time, and last-run statistics Structured log rows with status badges Log filters for errors, warnings, success, and redirects Search by URL, status, or message Downloadable logs Clear log history with confirmation System information Source testing Schedule status HTTP request diagnostics Compatibility Warmer is cache-plugin agnostic. It works with caching plugins, server caches, reverse proxies, and CDN/page cache layers that generate cache when a URL is visited. Common setups include: LiteSpeed Cache WP Rocket W3 Total Cache WP Super Cache NGINX FastCGI cache Varnish and reverse proxy caches CDN/page cache layers configured to cache visited pages Warmer does not replace your caching plugin. It helps your existing cache layer stay warm by requesting the pages you choose. Developer and automation features WP-CLI support for command-line cache warming workflows Webhook support for deployment and publishing workflows Diagnostics for testing URL sources and scheduler behavior Logs that make cache warming easier to monitor and debug Best use cases Warmer is built for site owners, developers, agencies, and performance-focused WordPress teams who want to reduce cold-cache page loads. It is especially helpful for: Business websites Blogs and publishers WooCommerce product pages and category pages when custom post type warming is enabled Membership and LMS sites with cacheable public content Sites using full-page cache Sites with scheduled cache expiration Sites where important pages should stay fast after cache purges