WordPressで記事を執筆していると、数秒〜数十秒おきに画面右上に「下書き保存中…」と表示されます。これが標準機能である「自動保存(Autosave)」です。
執筆に集中したいときに入力がカクついたり、意図しないタイミングで保存が走ることにストレスを感じ、「自動保存を止めたい」と考えるブロガーやライターは少なくありません。今回は、自動保存を無効化するメリット・デメリットを整理したうえで、おすすめの制御プラグインや最適な運用法について考察します。
そもそもWordPressの自動保存はどう動いているのか?
WordPressの自動保存は、デフォルトでブロックエディタ(Gutenberg)なら10秒ごと、クラシックエディタなら60秒ごとにバックグラウンドで動作します。
内部的には「Heartbeat API」と呼ばれるブラウザとサーバー間の定期通信が使われており、執筆中のコンテンツを一時データとしてサーバーへ送信し続けています。これ自体はデータ喪失を防ぐセーフティネットですが、編集環境によっては動作遅延やリソース圧迫の要因にもなります。
自動保存を無効にするメリット
| メリット | 詳細 |
|---|---|
| エディタの入力レスポンス向上 | 定期通信やスクリプト処理が止まるため、長文執筆時のブラウザのプチフリーズやタイピング遅延が解消されます。 |
| サーバー負荷の軽減 | Heartbeat APIによるサーバーへの連続リクエスト(admin-ajax.php)が減り、低スペックサーバーや複数人同時執筆時の負荷を抑えられます。 |
| リビジョンの肥大化防止 | 自動保存やそれに伴う一時履歴の生成を抑えることで、データベースのテーブル(wp_posts)が不要なデータで膨らむのを防ぎます。 |
| 公開済み記事の誤更新防止 | 公開中記事の修正中に勝手に下書き更新されて整合性が崩れる、といったトラブルを回避できます。 |
自動保存を無効にするデメリット
一方で、自動保存を切ることには小さくないリスクが存在します。
- 予期せぬクラッシュ時のデータ完全喪失ブラウザのフリーズ、タブの誤閉じ、OSの再起動、突然の停電やネットワーク断が発生した際、手動保存(
Ctrl + S/Cmd + S)していない内容がすべて消えます。 - 複数人編集時のロック機能の形骸化自動保存とHeartbeat APIは「現在誰が編集しているか」を判定する編集ロックにも使われています。これを完全に止めると、同じ記事を別ユーザーが同時に上書き保存してしまう事故が起きやすくなります。
- 完全無効化によるエディタ機能の不具合リスクGutenbergは自動保存や定期通信を前提にUI設計されている部分があるため、強引にスクリプトを停止させると公開ボタン周りで予期せぬスクリプトエラーが出る場合があります。
自動保存の制御におすすめのプラグイン
完全に無効化する以外にも、「間隔を延ばす」「リビジョンだけ制限する」アプローチが可能です。目的に応じて選ぶのが得策です。
- Disable Gutenberg Autosaveブロックエディタの自動保存機能だけをピンポイントで無効化、または保存間隔(例:60秒〜数分)を自由に設定できる軽量プラグイン。手軽に試したい場合に適しています。
- Heartbeat Control by WP RocketWordPress全体の定期通信頻度(Heartbeat API)を管理画面・投稿画面ごとに調整できる定番プラグイン。通信間隔を15秒から120秒へ広げるだけでも、サーバー負荷とエディタの重さは劇的に改善します。
- WP Revisions Control「自動保存そのもの」ではなく「データベースに蓄積される履歴(リビジョン)」が原因で重くなっている場合に最適。投稿タイプごとに保持するリビジョン上限(例:直近5件まで)を設定できます。
【プラグイン導入時の注意点】
注意: プラグインはWordPressの本体アップデートや使用中のテーマとの相性により、正常に動作しない場合があります。導入前には必ず最新の対応バージョンや評価を確認し、万が一に備えてバックアップを取得したうえで、自己責任にてご利用ください。
考察:完全無効化より「間隔延長+リビジョン制限」が最適解
自動保存を完全に「OFF(0秒)」にしてしまうのは、現代のWebライティング環境ではリスクがメリットを上回りやすいのが実情です。どれほどこまめにショートカットキーで保存していても、長文執筆中の不意のクラッシュによる数千文字の消失はリカバリーに多大な時間を奪います。
そこでおすすめなのが「完全停止」ではなく「保存間隔のチューニング」です。
- デフォルトの10秒間隔を60秒〜120秒程度に緩和する
- 併せてリビジョン保持数を3〜5件に制限する
この2点を設定するだけで、入力のもたつきやサーバー負荷を解消しつつ、万が一のデータ消失にも耐えうる安全な執筆環境が完成します。自身の執筆スタイルやマシンスペックに合わせて、最適なバランスを見極めてみてください。
functions.phpに数行コードを書いてプラグインなしで保存間隔を変更する方法
プラグインを使わずにWordPressの自動保存機能やバックグラウンド通信を制御する方法を解説します。
ここで1つ重要な前提があります。「自動保存の間隔」を定義するコードは、functions.phpではなくwp-config.phpに記述するのがWordPressの標準(ベストプラクティス)です。 (※functions.phpで無理に AUTOSAVE_INTERVAL を定義しようとすると、すでにWordPressのコアファイルで定義されているためPHPエラーが発生してしまいます。)
そのため、ここでは以下の2つのアプローチを紹介します。
- 【標準・確実】
wp-config.phpで自動保存の間隔を変更する方法 - 【代替案】
functions.phpでHeartbeat API(裏側の定期通信)を制限する方法
方法1:wp-config.phpで自動保存の間隔を変更する(推奨)
WordPressのコア機能である自動保存の間隔を直接変更する一番確実な方法です。
手順:
- サーバーのFTPやファイルマネージャーから、WordPressのインストールディレクトリにある
wp-config.phpをダウンロード(または直接編集)します。 - 以下のコードを追記します。追記する場所は、
/* That's all, stop editing! Happy publishing. */という行よりも「上」にしてください。
PHP
// 自動保存の間隔を120秒(2分)に変更する
define( 'AUTOSAVE_INTERVAL', 120 );
※デフォルトではブロックエディタが10秒、クラシックエディタが60秒になっています。ここを 120(2分)や 300(5分)などに設定することで、保存処理によるカクつきを大幅に減らすことができます。
方法2:functions.phpでHeartbeat APIの通信間隔を延ばす
エディタの重さやサーバー負荷の原因は、自動保存そのものだけでなく、WordPressが裏で行っている定期通信(Heartbeat API)にあります。これを functions.php で制御・緩和する方法です。
手順: お使いのテーマ(または子テーマ)の functions.php の末尾に以下のコードを追記します。
PHP
/**
* Heartbeat APIの通信間隔を変更する
*/
add_filter( 'heartbeat_settings', 'custom_heartbeat_settings' );
function custom_heartbeat_settings( $settings ) {
// 投稿編集画面でのみ適用する場合
global $pagenow;
if ( $pagenow === 'post.php' || $pagenow === 'post-new.php' ) {
// 通信間隔を60秒に設定(指定できる最大値は 120、最小値は 15)
$settings['interval'] = 60;
}
return $settings;
}
このコードを適用することで、サーバーへデータ送信を行う頻度(admin-ajax.phpへのリクエスト)が減り、エディタの動作が軽くなります。
まとめ:どのようにおこなうべきか?
- 自動保存のタイミングだけを純粋に延ばしたい →
wp-config.phpにdefine( 'AUTOSAVE_INTERVAL', 120 );を記述する。 - サーバーの負荷を下げたい(Heartbeatを抑えたい) →
functions.phpに Heartbeat API のフィルターフックを記述する。
両方を併用することも可能です。テーマのアップデートで消えないように、functions.php を編集する際は必ず「子テーマ」をご利用ください。
【重要・免責事項】
wp-config.php や functions.php は、記述を1文字でも間違えると「サイト全体が真っ白になる」「管理画面にログインできなくなる」といった重大なエラーを引き起こす非常にデリケートなファイルです。編集する際は、必ず事前にファイルのバックアップ(またはサイト全体のバックアップ)を取り、ご自身の自己責任で作業を行ってください。また、今後のWordPress本体のアップデートによってシステムの仕様が変更される場合があるため、事前に最新の情報をお調べいただき、ご理解いただいたうえでの作業をお願いいたします。
この記事を書いた人:岩野英穂
株式会社スタジオイワノ
代表取締役
当社は、WordPressを使用したウェブサイト制作を得意としています。初心者でも簡単に更新が可能なノンコード編集プラグイン「Elementor」を用いた作業にも自信を持って取り組んでいます。また、WordPressテーマ「Lightning」のカスタマイズなども幅広く手掛けています。さらに、オンラインショップ用の「Welcart」や不動産サイト制作用テーマ「不動産プラグイン」の制作も豊富に行っております。
また、制作業者様の下請け作業のお手伝いも行っております。人手不足やコーディングの一部を依頼したい、管理者が退職してしまった、更新内容を検討する時間がないなど、様々なご要望にお応えします。
お客様のご要望に合わせて無料の費用見積もりを提供させていただきますので、お気軽にお問い合わせください。
