chrome firefox IE safari chain youtube-play pocket hatena facebook feedly github google-plus rss twitter search code envelope-o home pencil website works calendar drawer tag

ブログ移転のお知らせ

当ブログは新ブログ「DEV.NISMIT」に移転しました。それに伴い、ドメインも全てリニューアルしました。

お手数ですが、ブックマーク、Feedly等の変更をお願いします。当ブログは数ヶ月を目安にリダイレクト、削除します。

2014/11/08

[WP]WordPressでの記事のリビジョンを変更する方法

今回はWordPressのリビジョン(revision)の設定変更の方法をメモしておこうと思います。
記事を書いているとどうしてもリビジョンが増えていってしまうので、その制限方法と
古い記事のリビジョンの整理方法について残しておきたいと思います。

リビジョン

リビジョンとは、下書きした記事や公開した記事などをどのように更新したかの記録の事です。

WordPressにはこのリビジョンシステムが実装されており、記事を下書き保存や公開、編集をした際にリビジョンが追加されていきます。

また一定時間毎に記事の自動保存という形でもリビジョンは追加されます。

自動保存については、記事を途中まで書いている際に停電やPCのクラッシュの時に非常に助かります。

PCが落ちた時は大体、少し書き足す必要が多いですがw 非常に便利です!

参考: リビジョン管理 – WordPress Codex 日本語版
http://wpdocs.sourceforge.jp/%E3%83%AA%E3%83%93%E3%82%B8%E3%83%A7%E3%83%B3%E7%AE%A1%E7%90%86 )

revision-visual1

リビジョン:2の横にある表示をクリックするか、または下の画像の

revision-visual2

日付部分をクリックのどちらかでリビジョン画面が出てきます。

revision-visual3

緑で覆われている部分が比較した際に追加された部分を指します。

画像では表示されていませんが、赤で覆われている部分が消去された部分を指します。

リビジョン管理

私は記事を時間がある時に細かく書いて下書き保存を繰り返し、コードなどを載せた後は実際にプレビューしながら確認し、調整をしてます。

なので、リビジョン数がすごい数になっていきますw

WordPressのデフォルトでは、リビジョンは無制限に取る設定になっております。

つまり、下書きや公開後に更新をしていくとリビジョンが増えていきますのでデータベースにリビジョン情報が増えていきます。

多くの記事を書く方にはデータベースを圧迫する要因の一つとなります。

但し、制限しない際のメリットとしてはどこまでも遡る事が可能という点です。

リビジョン制限

メリット/デメリットを理解した上でリビジョン数を制限するコードを載せたいと思います。

記載場所はwp-config.php

/* wp-config.php */
define( 'WP_POST_REVISIONS', 3 ); //3件のリビジョンを取る(4件目が追加された場合、古いものから削除)

//以下の記述より先にリビジョンの設定を記載する
/** Sets up WordPress vars and included files. */
require_once(ABSPATH . 'wp-settings.php');

WP_POST_REVISIONSの設定値は

  • true, -1 (全ての履歴を保存する)
  • false, 0 (履歴を全く保存しない。但し各投稿の1つの自動保存は除く)
  • 1以上の整数 (各投稿につき、指定された数のリビジョンの保存+1つ自動保存, 古いリビジョンから順番に削除される)

私はリビジョン制限数は5としています。

今までのリビジョン整理

途中でリビジョンを変更した場合、今まで保存されているリビジョンはそのままとなります。(更新した場合リビジョン数は設定した数に見える。但しデータは残ったまま)

プラグインを使用して、過去記事のリビジョンを整理します。

オススメのプラグインは「Better Delete Revision」です。

インストールして、有効化すると、サイドバーの設定内に追加されます。

revision-visual4

中に入ると、「You have XXposts」と書かれており、総投稿数が出ています。

そして、赤で囲っている「Check Revision Posts」をクリックし、全投稿のリビジョン数を調べます。

revision-visual5

全投稿のリビジョン数のカウントが終わるとこのような画面になります。

まだまだ下に他の投稿のリビジョンが、ズラッと並んでおりますので、一番下までスクロールして行きます。

revision-visual6

一番下にボタンが2つあります。

「Yes, I would like to delete them」を押すと現在ある全てのリビジョンを削除します。

念のため、データベースのバックアップを取った上で実行するのが望ましいです:)

revision-visual7

実行後は以下の画面になります。

「Deleted XXX revisions!」が表示されていればOKです。実際に記事の一つを見てみるとリビジョンが無くなっていると思います。

リビジョン制限をかけて、しばらくしたら整理したいという方はこのままプラグインは置いて、もうリビジョン無くす!って方はこのプラグインは削除してもいいかと思います!

revision-visual8

おまけ

Better Delete Revision」にはデータベース最適化という機能もついています。

「Optimize Your Database」をクリックしてデータベースのチェックを行います。

revision-visual5-2

データベースのチェックが完了後

Statusの所が「OK」になっていれば大丈夫ですが、以下の画像のように、Statusの所が赤字で掲載されている場合は最適化が必要という事です。

revision-visual9

一番下に「Optimize WordPress Database」と書かれている部分がデータベース最適化を行うボタンですが、

データベースを触るので、必ずバックアップを取った上で実行してください。

revision-visual10

最適化を行うと以下の画面になります。

ですが、私の場合最適化を行った後も 「Table upgrade required. Please do “REPAIR TABLE `wp_01xxxx`” or dump/reload to fix it」と書かれており、修正が出来ておりませんでした。

revision-visual11

REPAIR TABLEを実行する

調べた所、これはphpmyadmin等を利用し、REPAIRクエリを発行する必要があるようです。

やり方としては、phpmyadminにアクセスし、それぞれのテーブルへ移動します。

phpMyAdmin

テーブルに移動したら、赤で囲っている、「操作」をクリックしてテーブルの操作画面へ移動します。

phpMyAdmin2

テーブルメンテナンスという項目がREPAIR TABLEのクエリを発行してくれます。簡単ですね!

phpMyAdmin3

それぞれのテーブルに対して、修復作業を行いました。

その後最適化の部分を見ると全てOKになってました:)

最適化を再度行い、少しデータベースが軽くなっておりました!

optimize

いかがでしょうか。

リビジョンやデータベースの整理をしてスッキリしましょう!

 

 

参考サイト:

リビジョン削除プラグインBetter Delete Revisionの使い方 | ネットビジネスで20代にて転職して独立したなるひこのブログ

( http://naruhiko1111.com/4578.html )

WordPress[Better Delete Revision] 過去の不要なリビジョンを削除する方法 | dmgadget(ディーエムガジェット)

http://dmgadget.info/wordpress-plugins-better-delete-revision/ )

 

今後の励みになりますので、良かったらシェアをお願いします。

このエントリーをはてなブックマークに追加