ダッシュボードからボタン一つでTransientを全てクリアするプラグイン、「Clear Transient From Dashboard」が公式プラグインディレクトリに掲載されました!

事の初め

「表示が変わらないんだけどキャッシュ(Transient)なの?不具合なの?わからない!」という問題を少なくすべく、ちょっと考えていました。
【WordPress】Transientを問答無用で無効化する…ことはできなかった!に書いた通り、ログインしているユーザーの権限を使用して、Transientを効かせるかの制御は行えませんでした。
では、管理者なら簡単にTransientがクリアできるようにすればいいんじゃ?と思い、作成したのがこのプラグインです。

使い方

公式ディレクトリからダウンロードしてwp-content/plugins/にアップロードするか、管理画面からプラグイン名で検索して追加し、有効化してください。

Clear Transient From Dashboard を追加・有効化
Clear Transient From Dashboard を追加・有効化

有効化し、管理者(設定変更の権限を持つユーザー)としてログインすると、ダッシュボードに「Clear Transient」ボタンが表示されます。このボタンを押下するだけで、全てのTransientがクリアされます。
ダッシュボードに「Clear Transient」ボタンが表示される
ダッシュボードに「Clear Transient」ボタンが表示される

フック

このプラグインでは2つのフィルターフックを用意しています。

どちらもTransientを削除するかの真偽値を変更できるもので、以下のような場合に使用できます。

  • クリアさせたくない特定のTransientがある場合
  • 全てクリアさせるのではなく、特定のTransientのみクリアさせたい場合

コード

Githubで公開しています。
https://github.com/minkapi/clear-transient-from-dashboard
何も難しいことはしていません。SQLでTransient名を取得し、その全てに delete_transient() を実行しています。