WordPressのリビジョン削除・管理する方法!プラグインあり・なし両方の実装方法をご紹介

wordpress リビジョン 削除

本ページはプロモーションが含まれています

WordPressにはリビジョンと呼ばれる記事の下書き保存機能が搭載されています。この機能によって、過去に編集した記事を復元することや、現在の記事との変更点を照合することができます。

しかし、このリビジョン(下書き)もデータベースに保存されていくため、下書きが溜まりすぎるとそれだけデータベースのサイズも膨らみいろいろな副作用も生じてきます。

そうならないために、不要なリビジョンは削除していきたいところですが、1記事1記事削除しているのはとても骨の折れる作業ですよね。

今回はそのリビジョンを一括で削除し、自身のサイトに合わせてリビジョン管理ができる方法をご紹介します。

プラグインを用いての方法とプラグインなしの方法、SQL文を用いてデータベースから直接削除する方法をご紹介しています。

目次を参考にしながら、ご自身に適した方法でチャレンジして観てください。

※WordPressに慣れていない方はプラグインを用いた方法をおすすめします。

目次

リビジョンが溜まると起こる問題

実装に入る前にリビジョンが溜まるとどんな問題が起こるのか確認しておきましょう。

リビジョン(下書き)が作成されるタイミングは以下です。

  • 「手動の下書き保存」をした時
  • 下書き中の記事を変更してプレビューした時
  • 記事を公開した時
  • 公開した記事を変更し、最初に「自動下書き保存」した時
  • 公開した記事の変更をプレビューした時
  • 公開した記事を更新した時
  • ゴミ箱に記事を移動した時
  • ゴミ箱から記事を戻した時

データベースが肥大化する

リビジョンは上書きされて保存されるわけではなく、編集するごとに別の下書きとして保存されます。その分、データベースは肥大化していき、パフォーマンスにも影響し始めます。

投稿IDがどんどん増えていく

パーマリンクにIDを用いている方は、リビジョンが作成されるたびに記事のIDも増えて行くため管理ができなくなります。

データベースをバックアップする

リビジョンデータの削除は、データベースをいじることになります。念のため、データベースのバックアップを取っておきましょう。

バックアップが完了したら、以下で実際にリビジョンを削除、最適化をしていきます。ご自身に合ったやり方で実践してみてください。

プラグインを使用してリビジョンを削除する

今回は「Optimize Database after Deleting Revisons」と「Revision Control」の2つのプラグインを使用して、リビジョンの削除、最適化の管理をしていきます。

プラグインのインストール

管理画面から「プラグイン」→「新規追加」をクリックし、検索窓にプラグイン名(Optimize Database after Deleting Revison、Revision Control)を記入してください。

wordpressプラグインの新規追加

該当のプラグインが見つかったら、「今すぐインストール」→「有効化」をクリックします。

これでプラグインのインストールは完了です。

Optimize Database after Deleting Revison

「Optimize Database after Deleting Revison」を使って、リビジョンの一括削除とデータベースの最適化を行っていきます。

設定

管理画面から「設定」→「Optimize Database」をクリックします。

Optimize Database after Deleting Revisonの設定画面を開く

「Settings」の項目を編集していきます。

設定項目は以下の通り

Maximum number of – most recent – revisions to keep per post/pageリビジョンの保存数を設定
Delete trashed itemsゴミ箱データを削除
Delete spammed itemsスパムデータを削除
Delete unused tags不使用タグを削除
Delete expired transients内部キャッシュを削除
Delete pingbacks and trackbacksピンバックやトラックバックを削除
Keep a logログデータを保存
Schedulerデータベースの自動最適化のスケジュール設定
Show ‘1-click’ link in Admin Bar管理画面にリンクを表示
Show an icon in the Admin Menu管理画面にアイコンを表示

それぞれに上記のようにチェックを入れたら「Save Setting」をクリックしてください。

これで設定は完了です。

最適化

つづいてデータベースの最適化を行っていきます。「GoToOptimizer」をクリックします。
データベースの最適化

先ほどチェックを入れた内容が表示されます。問題がなければ「Start Optimization」をクリックしてください。

データベースの最適化の開始

下にスクロールすると「Saving」の項目があります。ここに最適化後のデータ量を確認することができます。

これで最適化の作業は完了です。無事、不要なリビジョンを削除し、データベースの最適化ができました。

Revision Control

Revision Controlのインストール

つづいて「Revision Control」の設定を行っていきます。

設定

管理画面「設定」→「リビジョン」をクリックします。

Revision Controlの設定画面を開く
以下の項目を設定していきます。

デフォルトのリビジョン設定→投稿投稿ページのリビジョンの最大保存数
デフォルトのリビジョン設定→固定ページ固定ページのリビジョンの最大保存数
デフォルトのリビジョン設定→カスタムCSSカスタムCSSページのリビジョンの最大保存数
リビジョンの範囲リビジョンの最大保存数の選択範囲
Revision Controlの設定

ここは好みの数値で良いですが、無効化すると下書きを保存をしないとプレビューが見られなくなります。任意の数値に設定しましょう。

これでリビジョンの制御は完了です。必要以上にリビジョンが溜まることはありません。

プラグインなしでリビジョンを制御する

プラグインを使用せずにリビジョンを制御することもできます。プラグインを使用したくないという方はこの方法でやってみてください。

リビジョン機能を無効にする

リビジョン機能を無効にするには”wp-config.php”を編集します。

ファイル最下行にある

require_once(ABSPATH.'wp-settings.php');

より前に、以下のコードを追加してください。

define('WP_POST_REVISIONS',false);

これで実装は完了です。

※プラグインを使用した実装方法を紹介したセクションでも記述したのですが、リビジョンの機能の無効化は一度下書きを保存したいとプレビュー機能が使えなくなりますのでおすすめしません。

リビジョンの数を制限する

保存するリビジョンの最大数を制御するには、同じ”wp-config.php”ファイルに以下のコードを追加します。第2引数に任意の数値を入れることで最大保存数を指定できます。今回は2記事とします。

define('WP_POST_REVISIONS',2);

記述する箇所は、

require_once(ABSPATH . 'wp-settings.php');

より前に記述します。

これで実装は完了です。実装後、指定した数値より古いリビジョンは削除されます。

手動で直接データベースから削除する

データベースのバックアップ

直接データベースを編集していきます。必ずデータベースのバックアップを取っておきましょう。

SQL文を実行

WordPressのリビジョンはデータベース上に”post_type”という項目に格納されています。rivisionとなっているデータをSQL文で削除します。

今回はMySQLを使用して説明していきます。

SQLタブを開き、デフォルトで記入されているSQL文を削除し、以下のSQL文を入力します。

E FROM wp_posts WHERE post_type = 'revision';

実行するボタンをクリックしてください。

これでリビジョンが全て削除されます。

まとめ

リビジョンは少量であればそれほどサイトのパフォーマンスに影響はありません。

しかし、長期間サイトを運営し、記事数が大量に増えるにつれてリビジョンの数も多くなり、しだいにサイトの表示スピードが落ちたりと何かと不具合おきてきます。

月に一度程度、定期的にリビジョンの管理をすることをおすすめします。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

志賀裕一のアバター 志賀裕一 サーバーチョイス 編集者

Web開発歴6年のフリーランスエンジニア。大学在学中から教育系Webメディアを運営するスタートアップにて、Webディレクターとして従事。独立からこれまでに多くのコーポレートサイトやCRM、予約システムなどのシステム開発、オウンドメディア運営を経験。20以上のレンタルサーバーの使用経験を持つ。

目次