A hand holding a JSON text sticker, symbolic for software development.

XSERVERで運用中のWordpressにて以下のエラー発生。

「Error loading block preview: 返答が正しい JSON レスポンスではありません。」

ブロックエディターになってからこの「返答が正しいJSONレスポンスではありません」をよく見かけるようになりました。

私がこのエラーに遭遇するとやること(これで9割くらいは治る)

  1. サーバー側(XSERVER)のWAF設定をいったんOFFってうまくいくかを確認する。
  2. サーバー側(XSERVER)のREST API制限(海外からのみの制限の場合も)いったんオフして状況を確認する。
  3. WordPress>設定>パーマリンク設定をいったん現状の設定ではないもの(特に基本設定になっている場合はJSONエラーが出やすいので)に変更して状況を確認する。
    場合によっては、Wordpressのパーマリンク設定が書き込まれる.htaccessがおかしくなっていてJSONエラーが起きていることがあるので、元に戻しても動くようになる場合もある。
  4. WordPressの本体のあるディレクトリとは違うディレクトリをサイトディレクトリとして利用している場合。
    index.phpをサイトディレクトリ側に複製して置く必要があるが、そのindex.phpに記載の

    require __DIR__ . ‘/wp/wp-blog-header.php’;

    と書いたままコピーしてしまい、wp-blog-header.phpへのパスが間違っていることでJSONエラーになる場合がある。
    私の場合は、__DIR__ を使わずサーバールートからの絶対パスを記述することでエラーを解決できたことがある。

    require ‘/home/xxx/example.com/public_html/wp/wp-blog-header.php’;

今回のLazy BlocksのError loading block preview: 返答が正しい JSON レスポンスではありません。」は、4のWordpressの本体のあるディレクトリとは違うディレクトリをサイトディレクトリとして利用している場合の対処で直すことができました。

投稿者 れもね

デザインやコーディグなどのあれこれの覚書き