ワードプレス

WordPressの自動保存を無効しデータ量を減らす方法【DB最適化】

気付かないうちにデータが蓄積していきデータベースを圧迫する機能

WordPressでBolg投稿していると、気付かないうちにデータが蓄積していきデータベースを圧迫する機能を発見しました。

それが「リビジョン」自動保存機能。

「下書き保存」で保存されていく機能ですが、自身が「下書き保存」を選択しなくても機能してしまっており、ドンドンデータ量が増えていきます。

リビジョン
リビジョン

長期でWordPressのサイトを運営していく場合はデータベースを圧迫しない為に、不要なデータは削除していくことが必要になってきます。

この不要なデータをしっかり管理することによってAll-in-One WpMigrationでサイト移動や復元に必要なデータも軽くすることができます。

バックアップデータ
バックアップデータ

対応前は「342.41MB」から対応後は「292.87MB」とデータサイズを「49.54MB」節約できました。自身のサイトは現状20記事ほどなので、元々のデータ量が少ないですが100記事以上になると塵も積もればでデータベースが圧迫されていきます。

プル

「自動保存の無効化」と「過去のリビジョン削除」について解説していきます。

リビジョンの影響確認

WordPress管理画面設定パーマリンク共通設定カスタム構造%post_id%の設定をしている場合、リビジョンが増えるたびにpost_idの数字も増えていきます。

パーマリンク
パーマリンク

25記事目の記事ですがcategoryカテゴリー後のpost_idポストアイディが5904となっています。

post_id
knowhow/5904/

自分で「下書き保存」クリックしてIDの数字が上がるのは仕方ないですが、自動保存が機能していると倍で数字が増えていきます。

自動保存のリビジョンは便利な機能ですが、データ容量や記事IDをコントロールしたい場合は止める必要があります。

リビジョンの自動保存を停止

プラグインは不要でfunctions.phpにコードを記述することによって停止することができます。

functions.phpを操作するのでバックアップは忘れずに!

WordPress管理画面外観テーマエディター子テーマfunctions.phpを開きます。

functions.php
functions.php

自動保存停止コード

functions.phpに下記コードを入力して「ファイルを更新」

// 投稿の自動保存を無効にする
add_action('wp_print_scripts',function(){
    wp_deregister_script('autosave');
});

これで、リビジョンが自動保存されることを防ぐことができます。

※投稿入力している時に「下書き保存」が点灯し保存しましたとでますが、リビジョンは増えません。

投稿後の不要なリビジョン削除

データベースの容量が大きくなると「サイトの動作が重くなる」「契約の上限に達すると画像や記事のアップロードができなくなる」などデメリットがあります。

リビジョンの削除はDB(データベース)SQLの知識が必要になり、データ破損などのリスクがあるためプラグインを使った安全な方法を紹介します。

プラグインは項目選択しクリックでの操作なので簡単に不要なデータを削除できます。

WP-Optimize(プラグイン)

WP-Optimize – Cache, Clean, Compress.
WP-Optimize

インストール

WordPress管理画面プラグイン新規追加キーワードWP-Optimizeを入力。

▪インストールするプラグイン
プラグイン名: WP-Optimize – Cache, Clean, Compress.
作者: David Anderson, Ruhani Rabin, Team Updraft

「今すぐインストール」→「有効化」

WP-Optimize(プラグイン)
WP-Optimize(プラグイン)

WordPress管理画面WP-Optimizeを選択。

最適化を実行する
最適化を実行する

「すべての投稿リビジョンをクリーン」の「最適化を実行する」をクリック。

リビジョンを削除
リビジョンを削除

これで不要になったリビジョンデータは削除されます。

データベーステーブルの最適化

WordPressのデータベースの最適化し不要なデータを削除できます。

この機能でデータベースの軽量化ができます。SQLの知識がなくてもワンクリックで最適化してくれます。

※念のために最適化する前にバックアップを取っておきましょう。

DBテーブルの最適化
DBテーブルの最適化

チェック項目に「無視して InnoDB テーブルを最適化します。」と不安を煽る文章になっていますが、自身で試してみた結果問題なく最適化できました。

データベース以外の「画像」「キャッシュ」の機能もついていますが自身は別のプラグインで対応。

「画像」→「EWWW Image Optimizer」「キャッシュ」→「Autoptimize」を使用しているので使っていません。

「WP-Optimize」はデータベースの最適化を目的として使用していくのがいいと思います。

データベースをプラグインではなくSQLPHPで管理したいといった方は下記の本をおススメします。

↓データベースやプログラミングの知識を身につけたい方は下記の本をおススメします。

よくわかるPHPの教科書
よくわかるPHPの教科書

▪よくわかるPHPの教科書
やさしい言葉で分かりやすく書かれているので、プログラミングの用語やコードに拒否感がある人でも、すいすい読み進めることができます。プログラミングの本を読むのが気が進まない人にとっても、「この本だけは最後まで読めた」1冊です。

book
created by Rinker
¥2,728 (2022/10/04 18:12:00時点 楽天市場調べ-詳細)

▪詳細!PHP7+MySQL入門ノート(お勧め本)
プログラマとしての道をスタートしようという人やPHPはきちんと学んだことがないという人を対象にし、詳しいコード注釈と図解を使って丁寧にわかりやすく解説されている本になります。

book
created by Rinker
¥3,278 (2022/10/04 08:19:23時点 楽天市場調べ-詳細)

画像と圧縮・キャッシュに関しては下記記事で解説してますのでサイト全体最適化の参考になさって下さい。

webサイトを速く表示する方法
【2022年版】Webサイトの表示速度を改善するプラグイン【WEBページ高速化】Webサイトの動きプラグイン導入やデザインを追加する際に、どうしてもサイトが重くなりパフォーマンスが悪くなってしまい、Googleの評価とユーザーの離脱率が上がってしまいます。Webサイトを見る環境にもよりますが、使用しているネット回線の速度が遅ければ、ダウンロードに時間がかかります。レンタルサーバーの契約している速度プランにも影響がある為、速度が遅い場合はどこに問題があるのかを特定しなければいけません。Webサイトの表示処理を速くしたい、そういった時はページを読み込む時のコード圧縮や画像を圧縮して出来るだけページを読み込む負担を減らす必要があります。高速化プラグイン設定で速度改善した内容をまとめました。...

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA