WordPressを使っていると、時々編集画面が重くなったり、動作が不安定になったりすることがありますよね。その原因の一つとして、リビジョン(記事の過去の編集履歴)が蓄積しすぎてしまうことが挙げられます。リビジョンが多くなりすぎると、データベースが膨大になり、必要なメモリ量も増加することがあります。最悪の場合、メモリ不足やFatal Errorが発生する可能性もあります。
今回は、この問題を解決するために、リビジョン管理を制限して、編集画面を快適に保つ方法をお伝えします。
fatal error: allowed memory size of 67108864 bytes exhausted
fatal errorの例。できれば一生出会いたくない文章です。。
1. wp-config.php でリビジョン数を制限する
直接wp-config.php
ファイルを編集してリビジョン数を制限する方法です。これは、WordPressが記事を保存する際に、リビジョンをどのくらい保持するかを設定する方法になります。
具体的には、以下のコードを wp-config.php
に追加します。
define('WP_POST_REVISIONS', 5); // 最新5回のリビジョンのみ保存
wp-config.php
に上記のコードを記述すると、最大5つのリビジョンだけが保存され、古いリビジョンは自動的に削除されます。リビジョンの数は、ここでは5としていますが、状況に合わせて任意の数に調整できます。
また、以下のようにWP_POST_REVISIONS
の値をfalse
に設定すると、リビジョンが保存されなくなります。
define('WP_POST_REVISIONS', false); // リビジョンを保存しない
ただし、こちらの場合は編集履歴が全く保存されませんので、後から復元する事ができなくなります。
どちらも注意点としては、
/* That's all, stop editing! Happy publishing. */
というコメントアウトよりも上に記述するようにしてください。なぜかというと、このコメントの後の
require_once ABSPATH . 'wp-settings.php';
という記述よりも後ろに追加すると、リビジョン設定が反映されないからです。
2. リビジョン管理プラグインを使う
リビジョンを管理するためのプラグインをインストールして、リビジョンの保存数を制限する方法があります。これにより、不要な履歴が増えすぎることを防ぎ、データベースを軽く保つことができます。
おすすめのプラグインには、"WP-Optimize" や "WP Revisions Control" などがあります。これらのプラグインは、記事ごとにリビジョンの保存数を設定できる機能を提供しており、例えば「5回までのリビジョンだけを保存」といった具合に、必要最低限の履歴だけを保持できます。
3. 不要なリビジョンを手動で削除する
すでに蓄積されてしまった不要なリビジョンは、手動で削除することも可能です。これには、前述のWP-Optimize を使うと簡単に行えます。WP-Optimizeは、不要なリビジョンを一括で削除してデータベースをクリーンアップすることができます。
手動でリビジョンを削除する手順は以下の通りです。
- プラグインをインストールし、有効化します。
- 「WP-Optimize」→「データベースの最適化」をクリック。
- 「リビジョンの削除」を選択して、削除します。
なお、phpMyAdminなどでデータベースにアクセスしてSQLクエリを実行する、という方法もありますが、ここでは説明を省かせていただきます。
4. まとめ
リビジョン管理をうまく行うことで、WordPressの編集画面を軽く保ち、動作不良を防ぐことができます。リビジョン数を制限する方法は、wp-config.php
で直接設定する方法、リビジョン管理系プラグインを使う方法などがありますので、自分の使いやすい方法で試してみてください。
もし、既にリビジョンが溜まりすぎている場合は、手動で削除することも忘れずに行いましょう。これで、快適にWordPressを使い続けることができるはずです。