WordPressのリビジョンを安全に削除する方法【手順とおすすめプラグイン】

← 作品一覧へ | WordPress プラグイン一覧 | ブログ

最終更新: 2026年9月22日 | 執筆: Takahiro Nishii

結論: WordPress のリビジョン削除は、公開済み記事ではなく revision 投稿タイプだけを対象にすれば安全です。件数が多い場合は、削除前にプレビューとバックアップができるプラグインを使うのが現実的です。筆者は長年運用するサイトの DB 肥大化を実際に経験し、この課題を解決するために Revision Autopilot を開発・公開しました。
ある日、サイトのバックアップにいつの間にか1時間近くかかるようになっていました。記事数はさほど増えていないのに、データベースだけが重くなっていく。原因を調べて wp_posts を覗くと、記事本体の何十倍もの行が「リビジョン(過去版)」で埋まっていたのです。これが、このプラグインを作るきっかけでした(詳しい経緯は 開発ストーリー に書いています)。

WordPress は記事を更新するたびにリビジョン(過去版)を wp_posts に保存します。数年運用すると、リビジョンだけで数万行に達し、バックアップや移行が重くなることがあります。 本記事では、安全な削除手順とプラグイン選びのポイントを、実際の管理画面とあわせて解説します。

WordPress のリビジョンとは?削除して大丈夫?

リビジョンは「過去の下書き・公開版のコピー」です。post_type = revision として保存され、通常の一覧には出ません。 公開中の記事本体は別レコードなので、リビジョンだけを削除しても公開記事は消えません。

一方、リビジョンをすべて消すと過去版への復元はできなくなります。削除前にバックアップ(エックスサーバーの自動バックアップや All-in-One WP Migration 等)を取ってください。

Revision Autopilot の概要。リビジョン総数1,923件・推定容量20.6MBを表示
まず「どれだけ溜まっているか」を可視化。総数・推定容量・投稿タイプ別の内訳が一目で分かる

手動でリビジョンを減らす方法(限界あり)

wp-config.php で今後の保存数を制限する

define('WP_POST_REVISIONS', 5);

これはこれから作られるリビジョンの上限であり、既存のリビジョンは削除されません。既に溜まった山はそのまま残ります。

phpMyAdmin で直接 DELETE する

技術者向けですが、SQL を一歩間違えると公開記事を巻き込んで消すリスクがあります。おすすめしません。プラグインまたは WP-CLI の方が安全です。

プラグインで削除すると何が変わるか

  • 削除対象が revision に限定される(公開記事を巻き込まない)
  • 件数・容量を確認してから実行できる
  • 投稿タイプ別(投稿のみ・固定ページのみ等)に絞れる
  • 削除後に OPTIMIZE で wp_posts の空き領域を詰められる
リビジョンの一覧。ID・タイトル・親記事・更新日時を削除前に確認できる
削除前に、実際のリビジョンを一覧で確認できる。表示されるのはリビジョンだけで、公開記事は出てこない

Better Delete Revision の代替は?

かつて人気だった Better Delete Revision は、2022 年に WordPress.org から削除されています(セキュリティ上の問題が指摘されました)。 そのため現在は、メンテナンスされている代替プラグインを選ぶ必要があります。放置され最新の WordPress で動くか分からないものは避けたいところです。

リビジョン削除プラグインの比較表。メンテナンス・削除前確認・削除範囲・セキュリティ・大量削除の各軸で比較
選び方の比較。メンテナンス状況・削除前確認・セキュリティ・大量削除耐性で選ぶ
選び方のポイント理由
WordPress 標準 API で削除wp_delete_post_revision() なら postmeta も整合する
nonce・権限チェックCSRF や権限昇格のリスクを下げる
削除前プレビュー誤削除の不安を減らす
最近の更新・WP 7 対応動作保証が明記されているか

おすすめ: Revision Autopilot の使い方

筆者が開発した Revision Autopilot は、上記のポイントを満たす無料プラグインです。 WordPress.org 公式ディレクトリで公開中のため、管理画面のプラグイン検索からそのままインストールできます。

  1. 管理画面 → プラグイン → 新規追加 → 「Revision Autopilot」で検索し、インストール・有効化する
  2. 管理画面 → ツール → Revision Autopilot を開く
  3. リビジョン総数と推定容量、投稿タイプ別の内訳を確認する
  4. 「投稿のみ」「固定ページのみ」など、タイプ別に削除する(または全削除)
  5. 開いたパネルに出る削除件数を確かめて、同じ数字が書かれた確定ボタンを押す
  6. 削除が終わったら、テーブルの最適化を実行して空き領域を詰める

手順5は、うっかり押せないようにするための2段階です。最初のボタンは削除しません——何件消えるのかを書いたパネルを開くだけです。その中の確定ボタンにも同じ件数が並びます。この確認は JavaScript を切っていても働きます。

大量のリビジョンも1クリックで

リビジョンが数万件あっても、押すボタンは1回で済みます。内部で自動的にバッチ処理し、進捗バーを見ながら削除が進むので、大量削除でタイムアウトする定番の悩みが起きません。1回のリクエストで消すのは最大1000件までと決まっていて、残り何件かは毎回サーバが数え直します。途中で気が変わったら中止できます。すでに消えたぶんはそのまま残り、もう一度実行すれば続きから進みます。

進捗バーを見ながら大量のリビジョンが削除されていく様子
進捗バーを見ながらバッチ削除が進む。押せば途中で中止できる(実際の管理画面)
注意: 削除したリビジョンは元に戻せません。実行前に必ずデータベースのバックアップを取得してください。

人が見ていない場面でも

同じ操作は、管理画面を開かずにも呼べます。サーバに SSH で入れる環境なら wp revision-autopilot delete --all を cron に置けますし、--dry-run は何も触らずに対象だけ報告します。WordPress 6.9 以降なら Abilities API 経由でも同じ操作を呼べるので、エージェントに任せることもできます。画面・コマンド・ability の3経路は同じコードの上に乗っているので、どこから呼んでも結果は同じです。

もちろん、管理画面だけで完結させても構いません。コマンドラインは必須ではありません。

無料・WordPress.org 公式ディレクトリで公開中です

WordPress.org で無料ダウンロード 機能・セキュリティの詳細を見る

リビジョン削除で DB はどれくらい軽くなる?

目安は「リビジョンの post_content の合計サイズ」です。数千件・長文ブログでは数百 MB になることもあります。 ただし、削除直後の効果を体感しやすいのはバックアップ時間の短縮とphpMyAdmin 上の行数減少です。OPTIMIZE TABLE でテーブル断片化の整理もできます。

よくある質問

リビジョンを削除すると SEO は下がる?

いいえ。検索エンジンが見るのは公開 URL のコンテンツであり、内部の revision レコードは通常インデックスされません。

自動でリビジョンを作らないようにできる?

WP_POST_REVISIONS を false または数値に設定すれば抑制できます。ただし、編集ミス時の復元手段は減るため、運用方針に応じて選んでください。

マルチサイトでも使える?

Revision Autopilot はマルチサイト非対応です。単一サイト向けとしてご利用ください。

日本語で使える?

はい。日本語の翻訳を同梱しているので、サイトの言語設定が日本語なら管理画面も日本語で表示されます。

Takahiro Revision Cleanup を使っているが、乗り換えるべき?

はい。2本は Revision Autopilot に統合され、旧プラグインは役目を終えました。こちらを有効化してから、旧プラグインを停止・削除してください。書き出すものはありません——どちらも同じリビジョンを読んでいるので、最初に開いた画面の数値は同じに見えるはずです。

リビジョン整理は「一度やれば終わり」ではなく、大きな更新の後に繰り返すメンテナンスです。まずは件数だけ確認し、必要なときだけ削除する運用が安全です。