WordPressで記事を更新しようとしたときに、「更新に失敗しました。返答が正しい JSON レスポンスではありません。」と表示されると、不安になる方は多いはずです。
このエラーは、見た目ほど原因が1つに決まっているわけではありません。実際には、URL設定、セキュリティ、プラグイン競合、テーマの不具合、サーバー側の制限など、さまざまな要因で発生します。
ただし、焦って大きく設定を変える必要はありません。多くの場合は、原因を順番に切り分けていけば解決できます。
この記事では、WordPressで「返答が正しい JSON レスポンスではありません。」と表示されたときの原因、まず確認したいポイント、ケース別の対処法、原因の調べ方までわかりやすく解説します。
「更新に失敗しました。返答が正しい JSON レスポンスではありません。」とは?
このエラーは、WordPressの投稿画面や固定ページ編集画面で、保存・更新・自動保存の通信が正常に完了しなかったときに表示されます。
WordPressのブロックエディタは、保存時にサーバーとやり取りしながらデータを送受信しています。その返答が正しいJSON形式で返ってこなかったり、途中で通信が止まったりすると、このエラーが表示されます。
つまり、問題の本質は「記事内容そのもの」ではなく、ブラウザとWordPress、またはWordPressとサーバーの通信が正常に完了していないことにあります。
まず最初に確認したいポイント
このエラーが出たときは、いきなり複雑な調査を始めるより、まず基本的な確認から進めるのが効率的です。
記事内容が保存されているか確認する
エラーが出ても、内容自体は一部またはほとんど保存されていることがあります。まずは投稿一覧や再読み込みで内容が残っているか確認してください。
WordPressアドレスとサイトアドレスが一致しているか確認する
「設定」→「一般」で、WordPressアドレスとサイトアドレスに不自然な違いがないか確認します。http と https の混在や、www あり・なしのズレがあると、JSONエラーの原因になることがあります。
最近変更した内容を思い出す
このエラーは、プラグイン追加、テーマ変更、functions.php の編集、URL設定の変更のあとに起きやすくなります。直前に行った変更があるなら、それを疑うのが最短です。
ブラウザを再読み込みして再確認する
一時的な通信エラーで表示されることもあります。まずは再読み込みや別ブラウザでの確認をして、再現するかを見てください。
このエラーが起きる主な原因
プラグインの競合
もっとも多い原因の1つです。特に、セキュリティ系、キャッシュ系、リダイレクト系、REST API に関わるプラグインは影響しやすい傾向があります。
テーマの不具合
使用中のテーマや子テーマに不具合があると、投稿画面での保存通信に影響することがあります。functions.php のカスタマイズが原因になるケースもあります。
.htaccess やリライトルールの問題
.htaccess に誤った記述があると、REST API へのアクセスや保存通信が正常に通らず、このエラーが出ることがあります。
サーバー側の設定や制限
メモリ不足、WAF、Basic認証、PHP設定、セキュリティ制限などが原因で、WordPressからの通信がブロックされる場合があります。
functions.php の記述ミス
functions.php のちょっとしたコード変更でも、投稿保存時のレスポンスに影響が出ることがあります。一見関係なさそうでも、最近編集したなら確認対象です。
REST API が正常に使えていない
ブロックエディタはREST APIを使って保存処理を行うため、この通信が止まるとJSONエラーになりやすくなります。
ケース別の対処法
プラグインの競合を確認する
- 「プラグイン」→「インストール済みプラグイン」を開く
- プラグインを1つずつ無効化する
- その都度、投稿画面で保存できるか確認する
- 原因が見つかったら、そのプラグインの設定を見直すか代替手段を検討する
一気に全部無効化して切り分ける方法もありますが、運用中サイトでは影響が出ることもあるため注意してください。
テーマの問題を切り分ける
- 「外観」→「テーマ」を開く
- 一時的にデフォルトテーマへ切り替える
- その状態で投稿保存ができるか確認する
デフォルトテーマで問題が出ないなら、現在のテーマまたは子テーマ側に原因がある可能性が高くなります。
functions.php を元に戻す
最近 functions.php を編集した場合は、変更箇所を一度元に戻してください。保存処理とは直接関係なさそうなコードでも、結果として投稿更新に影響している場合があります。
.htaccess を確認する
.htaccess をカスタマイズしている場合は、不要な記述や誤記がないか確認します。リダイレクトやアクセス制御のルールが保存通信を止めていることがあります。
サーバーのWAFやセキュリティ設定を確認する
レンタルサーバーでは、WAFやセキュリティ機能がWordPressの保存処理を誤検知して止めることがあります。一時的に無効化して改善するかを確認し、改善するなら例外設定を検討します。
SSL・URLの不一致を修正する
サイトが https で表示されているのに、管理画面や内部通信で http が混在しているとエラーの原因になります。URLの統一状態を確認してください。
原因を突き止める方法
原因がわからない場合は、ブラウザの開発者ツールを使うと切り分けしやすくなります。
ネットワークタブで通信を確認する
原因がはっきりしない場合は、ブラウザの開発者ツールを使って、投稿保存時にどの通信で失敗しているかを確認します。
- ブラウザでWordPressの投稿編集画面を開く
- 開発者ツールを開く
- 「ネットワーク」タブを選ぶ
- その状態で、投稿の保存や更新を実行する
- 一覧の中から、赤字や失敗表示になっている通信を探す
- 該当の通信をクリックして、レスポンス内容を確認する
保存処理で問題が起きている場合、失敗した通信のレスポンス内にエラー内容が含まれていることがあります。
特に確認したいのは、レスポンス内の message や error にあたる部分です。ここを見ると、プラグインの不具合なのか、サーバー設定なのか、権限やURL設定の問題なのかを切り分けやすくなります。
たとえば、内部サーバーエラー、REST API へのアクセス失敗、認証エラー、PHPエラーなどがそのまま表示されることがあります。画面上の「JSONレスポンスではありません」という文言だけでは原因が広すぎますが、レスポンス内容まで見ると、実際にどこで失敗しているかを特定しやすくなります。
ブラウザ側の表示だけで判断できない場合は、あわせてサーバーのエラーログも確認してください。開発者ツールで失敗した通信を確認し、サーバー側のログと照らし合わせると、原因をかなり絞り込みやすくなります。
サーバーのエラーログも確認する
ブラウザ側では情報が足りない場合、サーバーのエラーログに原因が出ていることがあります。PHPエラーやアクセス制限の記録がないか確認してください。
WordPressで特に起きやすいパターン
セキュリティ系プラグイン導入後
REST API や投稿更新通信を制限してしまい、JSONエラーが出ることがあります。
テーマ変更・子テーマ編集後
見た目の変更だけのつもりでも、functions.php の修正で保存処理に影響することがあります。
URLやSSL移行の直後
http から https への移行、ドメイン変更、www の統一などを行った直後は、このエラーが出やすくなります。
サーバー移転のあと
サーバー側の設定差分、WAF、PHPバージョン、キャッシュ設定などが影響して発生することがあります。
再発防止のポイント
- プラグインは必要なものだけに絞る
- テーマやfunctions.phpの編集前にバックアップを取る
- URLは http / https、www あり・なしを最初に統一する
- セキュリティ設定を変更したら投稿保存も確認する
- 問題が起きたら直前の変更を疑う習慣をつける
このエラーは原因が広く見えますが、実際には「最近変えた部分」に原因があることが多いです。普段から変更点を絞って運用すると、トラブル時の復旧も早くなります。
まとめ
「更新に失敗しました。返答が正しい JSON レスポンスではありません。」は、WordPressの保存通信が正常に完了していないときに出るエラーです。
- まずは記事内容が保存されているか確認する
- URL設定やSSLの不一致を確認する
- プラグイン、テーマ、functions.php を順番に切り分ける
- 開発者ツールのネットワークタブでレスポンスを確認する
- 必要に応じてサーバー設定やWAFも見直す
一気に全部を疑うのではなく、最近の変更 → プラグイン → テーマ → URL → サーバー の順で切り分けると、原因を見つけやすくなります。
