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](https://github.com/dartiss/[repo link] “Github”) 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.

This plugin can be found and installed via the Plugin menu within WP Admin (Plugins -> Add New). Alternatively, it can be downloaded from WordPress.org and installed manually…

  1. Upload the entire unzipped plugin folder to your wp-content/plugins/ directory, either from WP Admin (Plugins -> Add New), your favorite FTP client or any other file manager
  2. Activate the plugin through the ‘Plugins’ menu in WP Admin (Plugins -> Installed Plugins)

سوالات متداول

Why does this not work on WordPress 5.9 or later?

Because transient housekeeping was fixed in WordPress 5.9, so it’s not needed!

How often will expired transients be cleared down?

Once a day and, by default, at midnight. However, the hour at which is runs can be changed in the settings screen.

It should be noted too that this will only run once the appropriate hour has passed AND somebody has been onto your site (with anybody visiting, the scheduler will not run).

In the administration screen it sometimes refers to the number of transients and other times the number of records. What’s the difference?

A transient may consist of one or more records (normally a timed transient – the type that expires – has two) and without checking and matching them all up it can sometimes be hard to work out. So, where possible, it’ll tell you the number of transients but, where it can’t, it’ll refer to the number of records on the database.

Do you support this plugin on forks of WordPress?

No. It was developed for WordPress and so forks remain unsupported. I have no intention of developing and testing this on any other version.

×
نظری برای این آیتم موجود نیست.
0 0 رای ها
امتیازدهی
اشتراک در
اطلاع از
0 نظرات
قدیمی‌ترین
تازه‌ترین بیشترین رأی
نسخه حجم فایل SHA256 تغییرات دانلود
1.7 22 کیلوبایت -
دانلود
×
★★★★★
★★★★★
5.0 /5 (23 نظر)

قیمت:

رایگان

نگارش

1.7

آخرین انتشار

13 اردیبهشت 1405

آخرین بروزرسانی

4 ماه پیش

نصب های فعال

1,000+

نگارش وردپرس

وردپرس 4.4+

تست شده از نسخه

وردپرس 6.9.4

نگارش PHP

PHP 7.4+

نسخه ها

1 نسخه