WordPressで固定ページおよび投稿を保存するたびに、リビジョンというものが作成されます。下書きのものでも、公開済みのものでもそうです。リビジョンは過去のコンテンツ内容に戻したいという時に便利です。ただし、リビジョンはWordPressウェブサイトのパフォーマンスを低下させる場合もあります。 大規模なサイトでは、リビジョンはデータベース内の何千行にもなり、中には不要なものもあるでしょう。行数が多いほど、データベースのサイズが大きくなり、ストレージスペースが消費されます。パフォーマンスを向上させるためにWordPressのリビジョンを削除すること、数を制限すること、リビジョン機能を無効にすることについては、以下の手順に従ってください。

3. WordPressのリビジョン機能の最適化

古いウェブサイトのメインページの改訂版の数は100件以上もするのは珍しいことではありません。理由は単に、何年にもわたるコンテンツの編集と更新です。 たとえば、あるウェブサイトに固定ページと投稿は700件があり、それぞれのリビジョン数は150件であるとします。これで、データベース内のエントリ数が100,000件以上になります。これはよくある話です。幸いなことに、ウェブサイトのパフォーマンスへの悪影響をなくすしやすい最適化対策がいくつかあります。

WordPressのリビジョンを削除する

新しいウェブサイトを立ち上げている方は、既存のリビジョンがない為、次の章にジャンプしてください。古いウェブサイトをお持ちの方は、まず最初に何千件ものWordPressリビジョンを削除した方が良いでしょう。これでデータベースのスペースを解放することができます。MySQLクエリを使用して削除を行うなら、WordPressリポジトリフォーラムに悪いコードスニペットが多い為、ご注意ください。フォーラムには、ダッシュボードのリンクを機能させるのに必要な情報を削除するクエリを提案する人もいます。

代わりに、無料のWP-Sweepプラグインをお勧めします。WP-OptimizeプラグインまたはOptimize Database after Deleting Revisionsプラグインは、非常に人気がありますがお勧めできません。Kinstaユーザーにとって深刻な問題を引き起こすことが知られている為、両方は当社の禁止されたプラグインのリストに載っています。

どのデータベースプラグインを実行しても、正しく実行されないとウェブサイトが破損する場合があります。必ずMySQLデータベースを事前にバックアップしてください。ご自信のない方は必ずご利用の開発者に確認してください。

ステップ1

代わりに、無料のWP-Sweepプラグインをダウンロードし、インストールしてください。8万以上のアクティブなインストールがあり、評価は5つ星のうち4.5です。WordPressのリポジトリからもダウンロードできますが、WordPressダッシュボードのプラグインメニューの「新規追加」で検索することもできます。

WordPressプラグインWP-Sweep

WordPressプラグインWP-Sweep

ステップ2

「ツール」にある「Sweep」をクリックします。次にリビジョンとそのカウントが表示されます。「詳細」をクリックすると、該当の投稿のリストが表示されます。パフォーマンス上の理由から、一度に表示される項目の数は500件のみです。

WP-Sweepのオプション

WP-Sweepのオプション

ステップ3

準備が整ったら、リビジョンの横にある「Sweep」をクリックします。

WordPressのリビジョンを削除する

WordPressのリビジョンを削除する

次に削除されたリビジョンの合計数の簡単な確認画面が表示されます。この例のウェブサイトは小規模のテストサイトである為、削除されたリビジョンの数はそれほど多くはありません。大規模なウェブサイトではかなりの数があります。

削除されたWordPressのリビジョン

削除されたWordPressのリビジョン

WordPressのリビジョンをWP-CLIを使用することにより削除する

もう1つの特にWordPress開発者に適切な選択肢は、WP-CLIを使用して投稿のリビジョンを削除することです。これはWP-CLIコマンドの例です。

$ wp post delete $(wp post list --post_type='revision' --format=ids)
WP-CLIを使用してWordPressのリビジョンを削除する

WP-CLIを使用してWordPressのリビジョンを削除する

wp post deleteコマンドについては、WP-CLIの教育資料をご参照ください。

WordPressのリビジョン数を制限する

古いリビジョンをクリアした上での次のステップは許可するWordPressリビジョンの数を設定することです。これは、リビジョンが二度と積み重ねられないことを保証するための優れた対策です。保存するリビジョンの数を3件くらいにしましょう。そうするとWordPressはその3件を保存しますが、以前のリビジョンを削除します。または、wp-revisions-cliを使用して、以下の設定値に基づいて投稿のリビジョンを削除することもできます。

ステップ1

wp-config.phpファイルを開き、コードを追加します。これは、WordPressウェブサイトのディレクトリのルートにあり、FTPを介してアクセスできます。

注!WordPressテーマのソースコードを誤って編集するとウェブサイトが壊れる恐れがありますので、ご注意ください。ご自信のない方は必ずご利用の開発者に確認してください。

ステップ2

以下のコードは ‘ABSPATH’の上に挿入する必要があります。そうしないと機能しません。繰り返しますが、データベースに保存しておきたい固定ページまたは投稿毎のリビジョン数に合わせて数値を変更しても構いません。

define('WP_POST_REVISIONS', 3);

次のようになります:

WordPressの投稿のリビジョン

WordPressの投稿のリビジョン

あるいは、(Kinstaのチームメンバーにより開発された)perfmattersなどのプレミアムプラグインを使用することもできます。これにより、保存されているWordPressリビジョンの数を制限したり、リビジョン機能を完全に無効にしたりできます。

Perfmattersプラグインで投稿のリビジョン数を制限する

Perfmattersプラグインで投稿のリビジョン数を制限する

WordPressのリビジョン機能を無効にする(オプション)

最後の対処法は、リビジョン機能自体を無効にすることです。上記の2番目のオプションは最も広く使用されている対策です。しかし、ウェブサイトには投稿者は1名のみの場合には、リビジョン機能を完全に無効にする手もあります。下書きはそれでも保存されますが、リビジョンの復元ポイントだけがなくなります。

ステップ1

手順は、上記のリビジョン数の制限と同様です。wp-config.phpファイルを開きます。

ステップ2

以下のコードは ‘ABSPATH’の上に挿入する必要があります。そうしないと機能しません。

define('WP_POST_REVISIONS', false);

次のようになります:

WordPressのリビジョン機能を無効にする

WordPressのリビジョン機能を無効にする

あるいは、Disable Post Revisionという無料で軽量のWordPressプラグインを使用することもできます。プラグインを簡単にインストールし、ダッシュボードの「投稿設定」をクリックし、リビジョンを無効にしたい投稿タイプを選択します。

投稿のリビジョンを無効にする

投稿のリビジョンを無効にする


このチュートリアルが面白かった方なら、当社のサポートも大好きでしょう。Kinstaのすべてのホスティングプランには、ベテランのWordPress開発者とエンジニアによる24時間365日のサポートが付いています。フォーチュン500のお客様をサポートしているチームとチャットしませんか。当社のプランをご確認ください。