WordPress ヴィジェットエラー/返答が正しいJSONレスポンスではないを解決【2022年4月版】
ワードプレスの5.8バージョンアップ以降、ヴィジェットの管理方法が変更されました。それに伴い発生した2つのエラー、その現象と解決方法について記述します。
目次
1.管理画面が真っ赤! ブロックはエラーの影響を受け、正しく機能しない?
2.ページが更新できない! 正しいJSONレスポンスってなんだ?
3.プラグイン「Classic Widgets」をインストール
4.従来の管理画面が復活、ページの更新も問題なく
1.管理画面が真っ赤! ブロックはエラーの影響を受け、正しく機能しない?
あるときサイトの更新作業をしようとすると、ヴィジェットの管理画面が真っ赤になっていることに気づきました。立て続けにざっと10個ものエラー表示。「XXXブロックはエラーの影響を受けており、正しく機能しない可能性があります。詳細は開発ツールを確認してください」
2.ページが更新できない! 正しいJSONレスポンスってなんだ?
さらにしばらくして、ページの更新ができない事態が発生。全てのページではなく一部ですが、「エラーが発生しました: 返答が正しいJSONレスポンスではありません」と表示され、更新内容を保存することができません。JSONレスポンスって、いったい何?
いろいろと調べてみると .htaccess ファイルに不備があるケースが多く、これを修正することで解決するとか。ただ今回のケースでは .htaccess を変えても問題は変わりませんでした。
3.プラグイン「Classic Widgets」をインストール
つまるところブロックのエラーと、JSONレスポンスのエラーの原因は同じ。どちらもヴィジェットの管理がブロックエディターに変わったことにあり、これを従来の方式に戻すことで解決を見ることができました。従来のヴィジェット管理画面に戻すプラグイン「Classic Widgets」をインストールします。
やり方は簡単。プラグインの新規追加から、キーワード検索ですぐに見つかります。
公式のプラグインなので特に心配もないでしょう。インストール後、有効化をすれば完了です。
4.従来の管理画面が復活、ページの更新も問題なく
ヴィジェットの管理画面がブロックエディターではなく、従来の形式に戻ります。真っ赤なエラー表示が並ぶこともなく、またページの更新に際して「返答が正しいJSONレスポンスではありません」とエラーになることもありません。
ただ Classic Widgets のサポートは「少なくとも2022年まで」だそうです。少なくともという表現からすると2023年以降も延長されることが期待はできますが、長期的に考えるとブロックエディターへの移行が推奨されるのかもしれません。