WordPress 投稿リビジョンの管理

WordPress2.8を使用しているこのブログには「投稿リビジョン」という機能があります。
2.6あたりから搭載された機能のようです。あなたのWordpressでも記事投稿画面の一番下に表示されているかもしれません。

この投稿リビジョンという機能は、wikiのように過去の編集履歴を確認できたり編集内容の比較ができるため、複数の管理者などでWordpressに投稿している場合などにとても便利な機能です。

しかしこの機能が働いている状態でデータベースを見れば驚くかもしれません。特に私のブログのように、自動保存の機能が有効で、ゲームの攻略情報をまとめるために下書きを重ね、長い時間をかけて編集し、後からも更新作業を行うともの凄いことになります。投稿数の何倍ものリビジョンがデータベースに残されているからです。
そういうブログでなくとも、例えば、投稿してから誤字に気付き1文字修正したとします。ただそれだけでもリビジョンは増えているはずです。

今、このブログでは記事はこの記事を除いて7つです。固定ページは3つほどです。この状態でphpMyAdminからデータベースを見てみます。
データテーブルwp_postsの中のpost_typeがrevisionのものを検索してみます。

revisionを検索
revisionを検索

164件のリビジョンがありました。
固定ページを入れても10件くらいで記事としては7件に対して164件のリビジョンがあるのです。投稿の自動保存が有効で下書きを繰り返し、更新を頻繁にするブログだとこんな感じになると思います。また、投稿のときに自動で割り振られる記事のIDもリビジョンごとにつくので、このブログでは7件の記事に対していつの間にかIDは200を超えています。

リビジョンの機能自体は良いと思うのです。便利です。個人で書くブログならいらないかもしれませんが、個人的にはここまで増えなきゃ使いたいと思います。ただ、レンタルサーバなのにリビジョンでそんなに容量を喰ってはたまらない。

ということで、リビジョンの管理をします。

投稿リビジョンの機能自体を停止する場合

プラグインがあります。
WORDPRESS軽量化-自動保存の恐怖(;゜Д゜) | たゆたん!: を参考にしました。

Exper Chaotic Flow » Blog Archive » Disable Revisions and Autosave plugins: にプラグインがあります。

disable-autosave.zip (Right Click – Save As) – Disable Autosave function
disable-revisions.zip (Right Click – Save As) – Disable Revisions function
disable-revisions-and-autosave.zip (Right Click – Save As) – Disable Revisions and Autosave at the same time.

disable-autosave.zip (右クリックで保存) – 記事の自動保存機能を無効にします
disable-revisions.zip (右クリックで保存) – 投稿リビジョン機能を無効にします
disable-revisions-and-autosave.zip (右クリックで保存) – リビジョン機能と記事の自動保存機能を同時に無効にします

ということです。
自動保存はして欲しいけどリビジョンは使わないとか、どっちもいらないとかで好きに選んで良いかと。

過去の投稿リビジョンを削除する場合

プラグインがあります。
上記と同じくWORDPRESS軽量化-自動保存の恐怖(;゜Д゜) | たゆたん!を参考にしました。
WordPress › Delete-Revision « WordPress Plugins:
プラグインの仕様は英語ですがわかると思います。
これで過去の投稿リビジョンをデータベースから削除することが可能です。
ただし、一括で全てのリビジョンが削除されます。

投稿リビジョンの管理

使いたいけど今の調子じゃ困る、って場合は以下です。
WordPress2.6の投稿リビジョンをOFFにした。 – Planting Field Web Log:を参考にしました。

blog://dd32.id.au/ » Revision Control:
WordPress › Revision Control « WordPress Plugins:

このプラグインはページと記事それぞれで投稿リビジョン機能の有効・無効を個別に切り替えることができます。記事のリビジョンはいらないけれど、ページのリビジョンは使いたい場合などにも対応できるということです。
リビジョン機能を有効にする場合は数を2件から14件の間で任意に制限することが可能です。
また、ブログ全体のリビジョンの設定に加えて、個々のページで個別にリビジョンの設定が可能なので、「このページはリビジョンを多く残しておきたいがあのページのリビジョンは全くいらない」という場合なども細かに設定できます。
さらに、手動でリビジョンの削除もできます。設定したリビジョンの制限数に達した場合、最も古いリビジョンがデータベースから自動でなくなります。(厳密には古いものから順に上書きされていく、のかな?)

とにかく、設定した数以上のリビジョンはデータベースには残りません。

投稿リビジョンの管理 まとめ

自分がどう使いたいかを考えてからプラグインを導入すれば結構自由にリビジョンの管理ができます。
リビジョンを全く使わない場合はdisable-revisionsだと設定もいらず導入するだけなので楽です。
リビジョンまたは自動保存のどちらかだけを無効にする、もしくは両方を無効にする、という場合も同じで特に設定などはいらず、プラグインを導入するだけです。

私はリビジョン機能自体はあったほうが便利だと思っているので、今回はRevision Controlを使用することにしました。
勝手に増えていくのはちょっとアレなのでdisable-autosaveを導入します。
ただし、Revision Controlを使用しても過去のリビジョンは残ったままになります。今までの分はさすがに多すぎるので削除するためにDelete-Revisionも導入しました。Revision Controlでも手動でリビジョンの削除が可能ですが、さすがに164回も削除をクリックしていられないので。

上記のプラグインを選んで導入することで、リビジョンの有効・無効の切り替えや削除、管理が可能になります。
また、データベースを直接いじるのはちょっと…って方も簡単にリビジョンの削除ができます。

他にもリビジョンの管理をするプラグインは多くありますが、個人的に現状で満足しているので以上で終了します。

1件のコメント

コメントを残す