WordPress を 2.5.1 から 2.7 にバージョンアップしたら現れた「投稿リビジョン」。管理画面の下の方に表示されているだけで、正直あんまり気にしてなかった。更新履歴が保存されているのだろう、くらいに考えていたのですが、大間違いでした。
「投稿リビジョン」とは修正前の状態に戻ることができる機能みたいです。 WordPress 2.6 から加わった機能らしいです。一見、便利じゃん、って思ってしまいますが、これが殺人的に恐かった。なぜかというと、記事を修正し保存公開するたびに、リビジョンが増えていくのです。表面的には、投稿 ID が増えていくだけのように見えます。
でも実態は、データベースの「 wp-posts 」のテーブルが 1 行ずつ増えていくんです。しかも、記事の内容もすべて保存されてる。一文字だけ修正したのとか、あとからタグ付けを投稿編集画面からしたときとかも、全部新規ユニーク ID で保存されてて、データベースのテーブルの行数が殺人的に増えていたのです。恐怖だ。
この「トイレのうず」の全記事数はこの投稿は 1245 (この投稿を含めない)。でも、 phpMyAdmin で「 wp-posts 」テーブルを確認すると ID は 1945 。 700 行も無駄にしている! 2004 年の 10 月から始めてこの数だから、単純計算したら、 700 行というと約 1 年分に相当する。こんなのデータベースの容量圧迫にすぎないじゃん!
そして、テーブルの中身をよく見てみると、「 1942-autosave 」とかいうのがある。投稿編集画面を開きっぱなしにしていると、自動的に保存してくれて、これまたテーブルの行数を無駄に消費してしまうみたい。おせっかいだなぁ。
そんな「投稿リビジョン」ですが、ちゃんと停止する方法があるみたいです。
方法は 2 つあって、コードを書き換える方法とプラグインを入れる方法。わたしは迷わず後者を選びました。
コードを書き換える方法は下記を参照してください(手抜き)。
→お茶屋の気ままにゆっくりブログ:自動保存&リビジョン管理を無効にする: Wordpress メモ
で、プラグインですが、検索したところ大きく分けて 2 種類あるようです。
- Revision Control
- Disable Revisions and Autosave plugins 系
投稿、ページごとに投稿リビジョンの on/off の設定が可能。投稿リビジョンの件数指定も可能。過去の記事も削除できるようになるらしい(未確認)。
3 種類のプラグインがあり、リビジョン、オートセーブを停止したいものに合わせてプラグインをインストール。
disable-autosave.zip – オートセーブのみ無効化
disable-revisions.zip – リビジョンのみ無効化
disable-revisions-and-autosave.zip – リビジョンとオートセーブを両方無効化
とりあえず、 disable-revisions-and-autosave をインストールして「投稿リビジョン」と「オートセーブ」を停止しました。
でも下記の記事をみると、 Revision Control と Disable Autosave の組み合わせがよさそう。様子をみて変更してみようと思う。
→ ///onelove*Diary/// :投稿リビジョンが気になる…
オートセーブ機能には何度か助けられたから本当は使いたいのだけれど、投稿編集画面を開きっぱなしにしてるのも保存されちゃうのはいただけないから、手動でこまめに保存するか。う〜ん。