【WordPress】5分でOK!リビジョン削除&データベース最適化プラグイン紹介+リビジョン機能停止方法

WordPress

みなさんこんにちわ、にゃーお。です。
本日はブログのメンテナンスをする上で更新の度に履歴されてしまう「リビジョン」をすっきりさせ、データベースを最適化する方法をご紹介したいと思います。

スポンサーリンク

リビジョンって何??なぜ最適化??



リビジョンとは「履歴」の事で一般的に修正していったものに対してバージョンのように番号を付けて管理するために用いられます。
バージョンに対する変更の履歴なので、システムやソフトウェアではバージョン+リビジョン(例:ver3.1.2.33、このとき「3.1.2」がメジャーバージョン+マイナーバージョン、最後の「33」がリビジョンに相当)のように使われるのが一般的です。

純粋に履歴を後から追いかけたり、当時の状態を再現させたりする意味もあるので、履歴の情報を管理するうえで大変重要な物です。

では何が問題?

純粋にこの履歴情報を持って再現できるようにするという事は、それだけの過去のデータを重複して持つ事になります。
一般的には履歴情報と紐づけてブログの記事を再現できるようにするためにデータベースで管理されます。

例えばデータベースでは無いですが、Excelの表をイメージしてください。最初は情報量が少ないのですが、メンテナンスを怠ると単純に表の情報が履歴が増えるごとにどんどん増殖していくのです。
そうするとデータを読み込むのに待ち時間が発生したり、保存するのに待ち時間が発生したり、、、良いこと無いですよね。
そういう意味で不要なデータを定期的に削除する事はデータベースの最適化に繋がり、処理のスピードアップは動作の安定に繋がるんです。



スポンサーリンク

最適化プラグイン「Optimize Database after Deleting Revisions」


「Optimize Database after Deleting Revisions」は名前の通りリビジョンを削除しデータベースを最適化するプラグインです。
評価も上々。主に以下のような機能があります。設定でそれぞれ自由にON/OFFできます。

・投稿記事や固定ページのリビジョンの削除
・ゴミ箱記事の削除、ページやコメントも。
・スパムコメントの削除
・使っていないタグの削除
・トランジェントの削除
・pingバック、トラックバックの削除
・OEMBED(ブログカードなど)のキャッシュの削除
・きちんと定義されていないメタデータの削除
・データベーステーブルの最適化
・ログの最適化
・定期的に最適化する間隔

「Optimize Database after Deleting Revisions」のインストール

では早速インストールしてみましょう。
いつものWordPress管理画面から「プラグイン」->「新規追加」をクリックします。「revision」等で検索しましょう。トップに出てきます。

「今すぐインストール」をクリックしてインストール完了後に「有効化」をクリックします。
プラグイン一覧に表示されますので、「Settings」をクリックしましょう。

「Optimize Database after Deleting Revisions」の設定

設定画面が表示されます。1つ1つ自由にチェックを入れる事ができますのでチェックしていきましょう。
ご参考までに当ブログでは以下のように設定しました。

・Delete revisions for the following (custom) post type(s):
 リビジョンを削除する記事の種類。一通りチェック入れました。

・Delete revisions older than
 何日より古いリビジョンを削除するか。とりあえず1を入力。空白でもOKです

・Maximum number of – most recent – revisions to keep per post / page
ポスト/ページごとに保持する最新のリビジョン数。いったん4つにしておきました。0でもいいと思いますよ

・Delete trashed items
ゴミ箱(削除したデータ)の削除。チェックしておきました。

・Delete spammed items
 スパムデータの削除。チェックしておきました。

・Delete unused tags
 使っていないタグの削除。今後使うかもしれないのでいったん保留。

・Delete transients
 トランジェントの削除。いったん保留。

・Delete pingbacks and trackbacks
 Pingバックの削除とトラックバックの削除。いったん保留しました。

・Clear oEmbed cache
 OEMBED(ブログカードなど)のキャッシュの削除。これもいったん保留。

・Optimize InnoDB tables too
 データベーステーブルの最適化。これはチェックを入れました。

・Keep a log
 ログを残しておくか。これはチェック。

・Scheduler
 自動で最適化する頻度。いったんチェックは保留。

・Show ‘1-click’ link in Admin Bar*
 WordPress管理画面の上部メニューバー(ブログ名と「+新規」「管理メニュー」「UpdraftPlus」ってある所です)にリンクを追加できます。1クリックで最適化してくれるようになります。とりあえずチェック入れておきました。

・Show an icon in the Admin Menu*
 WordPress管理画面の左側のメニュー一覧に最適化ボタンが追加されます。好みで良いと思います。こちらはチェックしませんでした。

他に、これらチェック項目の下にデータベースのテーブル一覧が載っており、履歴削除を除外する設定ができるようになっています。
とりあえずチェックは入れませんでした。

最後に「Save Settings」をクリックしましょう。上記チェックの設定が保存されます。

「Optimize Database after Deleting Revisions」の実行

※いよいよ実行ですが、いったん記事情報などバックアップしておきましょう

ちょっと英語版だと分かりにくいのですが、先程の設定画面で「Go To Optimizer」をクリックしましょう。

設定項目の確認画面が表示されます。

問題無ければ「Start Optimization」をクリックしましょう。

すると「Cleaning Database」の表示と共に、だーーーーーーっと削除したリビジョンが表示されます。

下へスクロールさせ、辿っていくと・・・

「Saving」の表示のところに削除結果が表示されます!! どーん

当ブログはまだ開始したばかりの弱小ブログですが、それでも14MBから10MBにダウンサイズ!すごっ
約30%のダウンです!!!

これで完了なのですが、「DONE!」の表示の所にある「View Log」をクリックすればログの確認を、「Clear Log」をクリックすればログを削除できます。こちらはお好みで。



まとめ

WordPressは自動で履歴がどんどん蓄積される設定になっているため、気づくとWebサイトのデータベースアクセスのレスポンスに支障が出るほどの悪影響をもたらす可能性があります。

Webサイトの高速化を実現し維持するためにも定期的にリビジョンを削除してスッキリさせましょう。5分でいけますよ!


スポンサーリンク

おまけ:リビジョン機能停止設定方法



実はWordPressのPHPファイルを編集することでリビジョンを取る機能を止める事ができます。以下ご紹介。

FTPツール等でこちらにアクセスしましょう。
/public_html/wp/wp-config.php

FTPツールを使ったファイルへのアクセスについては記事にまとめていますので、こちらもご参考ください。

wp-config.phpファイルをエディタで開きます。
当ブログでは「Atom」というエディタツールを使っていますが他のエディットツールでも問題無いです。
テキストの編集ができればOKですよ。

以下のコードの手前にリビジョン機能の設定をするコードを追記して保存すればOKです。
※wp-settings.phpファイルの読み込み前にコードで指定する。

/** Sets up WordPress vars and included files. */
require_once ABSPATH . 'wp-settings.php';

1.リビジョン機能の停止

define('WP_POST_REVISIONS', false);

※再開させるときは「false」を「true」に書き換えればOK。

2.リビジョンを何回取得するか

define('WP_POST_REVISIONS', 99);

数字を書き換えればOKです

3.リビジョン自動取得の間隔

define(AUTOSAVE_INTERVAL, 60);

数字を書き換えればOKです、単位は秒。

4.自分で記事を更新する事によるリビジョン機能は残したままで自動保存だけ停止

function disable_autosave() {
  wp_deregister_script(‘autosave’);
}

以下参考

https://wpdocs.osdn.jp/リビジョン管理

コメント