WordPressのリビジョンを削除する方法(プラグイン不使用)

※以前掲載していたSQL文だとメディアライブラリに不具合が生じるとのご指摘をいただきましたので修正を行いました。申し訳ありません。またより安全を期す場合にはWordPressで肥大し続けるリビジョンを管理してすっきりさせる方法で紹介されているようなプラグインの利用をおすすめします。

先日、WordPressのリビジョン機能を停止する方法についての記事を書きました。この記事の設定をしておけば、今後は余計なリビジョンが作られることはなくなります。

しかし、これまでに作成されたリビジョンが削除されたわけではありません。古いリビジョンは相変わらずデータベース上に存在します。これらはの容量を無駄に圧迫する上に、データベース整理の際などに邪魔になります。

WordPressのリビジョンの削除方法

※MySQLの管理ツール「phpMyAdmin」が使える必要があります。また作業は自己責任で行ってください。

テーブルのバックアップ

作業前に念のためにテーブルのバックアップをとっておきます。

  1. phpMyAdminにログインします。
  2. WordPressで使っているデータベースを開きます。
  3. 記事を格納しているテーブル「wp_posts」を開きます。
  4. 「エクスポート」のタブを開きます。
  5. 「ファイルに保存する」にチェックを入れます。
  6. 「圧縮」の「なし」にチェックを入れます。
  7. 「実行する」をクリックするとSQLデータがエクスポートされ、保存ダイアログが表示されるので保存します。

リビジョン削除のSQL文を実行

WordPressでは保存されたリビジョンは、「post_type」という項目が「rivision」の状態で保存されています。
今回はこの「rivision」のデータをSQL文で一括削除します。

  1. 「SQL」のタブを開きます。
  2. 入力済みのSQL文を削除し、かわりに以下のSQL文を貼り付けます。
    DELETE FROM wp_posts WHERE post_type = 'revision';
  3. 「実行する」をクリックします。

以上でリビジョンがデータベースから削除されます。