当社でお手伝いさせていただいているお客様のサイトで、ページの編集画面を開くのに時間がかかるようになったという問題があり、原因を調査しました。

そのサイトは WordPress により運用しているのですが、特にトップページの編集画面を開くのにやたらと時間がかかることがあります。

遅くなった原因は WordPressページリビジョンという機能にあることが分かりました。

WordPress のページリビジョン機能

このページリビジョン機能は、ページの変更履歴を記録しておいて過去のある時点の状態に戻すことができるというものなのですが、WordPress の初期設定では過去の更新履歴をすべて記録するようになっているんです。

SEO対策を考慮するとトップページは特にこまめに更新することが望ましく、そのお客さんの WordPress サイトでもトップページを頻繁に更新されていました。

このように数年間運用された結果、トップページの編集画面を開くたびに過去の膨大な更新履歴を読み込んでしまい、時間がかかるようになったんです。

対策は wp-config.php に設定を1行追加

この問題の対策として、WordPressページリビジョン機能を無効にしました。

具体的には、wp-config.php に以下の行を追加します。

define (‘WP_POST_REVISIONS’, false);

追加する場所は wp-settings.php を読み込む前にする必要があるようです。(下図参照)

WordPress のページリビジョン機能を無効にしました

これにより、編集画面がすんなりと開くようになりました。

【2011-10-10 (月) 追記】さらにページの更新に時間がかかる問題の対策も行いました

編集画面はすぐに開くようになったのですが、ページの更新を行うとけっこう待たされるという問題がまだ残っていました。

この遅さの原因は膨大なページの変更履歴によるものでした。

Better Delete Revision というプラグインをインストールして過去の変更履歴をすべて削除したところ、ページの更新もすぐに終わるようになり、以前のように快適に更新作業を行えるようになりました。

メデタシ、メデタシ・・・。