ワードプレスのサイトヘルスに、「致命的な問題」が発生したと警告が出た。
1件の致命的な問題
致命的な問題とは、サイトのパフォーマンスやセキュリティに多大な影響を与える項目です。最優先で、これらの問題を解決してください。
えらいこっちゃ。
色々調べて先ほど解決したのですが、
結論から言うと、
この2つの更新で、REST API のエラーが解消しました!
ただ、WordPressのテーマによっては、
さらなるエラーが発生するかも・・・!
そこで今回は、「REST API でエラーが発生しました」の対処法を詳しく説明します!
「REST API でエラーが発生しました」プラグインが原因じゃない時の対処法
サイトヘルスステータスに表示される「REST API でエラーが発生しました」の原因と対処法について、
グーグル検索をすると以下のような方法が出てくる。
いずれも試してみたが、エラーは解消されなかった。
「サイトでループバックリクエストが完了できませんでした」古いPHPが原因?
ふと、サイトヘルスの「おすすめの改善」の方に出ていた、
もう1つのエラーが目に留まった。
見かけないエラーだな・・・。
そこで、「サイトでループバックリクエストが完了できませんでした」の対処法を調べてみたところ、
という情報(※)が出てきた。
※sheeepy.comさんの記事を参考にしました。
そういえば、過去に何度か起きたワードプレスのエラーの原因のいくつかは、こいつが原因だった。
PHP・・・あやしい!
古いPHPをバージョンアップ「非推奨」→「推奨」に変更する
さっそく、エックスサーバーの「サーバーパネル」で、
「PHPバージョン切替」を開いたところ、
やっぱり。
PHPのバージョンが「非推奨」になってる!
PHPを最新バージョンに変更する。
PHPのバージョンは「推奨」と表示されているものを選べば良い。
現時点では「PHP8.1.22」が推奨だったので、このバージョンに変更した。
なぜ⁉ ワードプレス「サイトヘルス画面」が表示されない原因
よし。これでサイトヘルスのエラーは解消だ!と思いきや・・・
むむ?
相変わらず、サイトヘルスステータスは『改善が必要』なまま。
エラー数も4項目のまま変わっていない。
しかも! なぜ?!
サイトヘルス画面(詳細)が表示できない。汗
ダッシュボードのサイトヘルスステータスからはもちろん、「ツール」→「サイトヘルス」もダメ。
ワードプレス管理画面の他のメニューは開けるのだが、なぜか「サイトヘルス」だけ表示できない。(クリックしても反応しない)
PHPバージョン更新後、WordPressを最新バージョンに更新でエラー解消!
若干パニックになりつつ、ひらめいた。
「PHPを更新したってことは・・・ワードプレスのバージョンはどうなんだ?」
WordPressの新しいバージョンがあります。
やっぱり!!!
念のため、更新前にバックアップをとってから、
WordPressを最新バージョンに更新!
キタ━━━━(゚∀゚)━━━━!!
いや、もちろんまだ、サイトヘルスの『おすすめの改善』には、
「永続オブジェクトキャッシュを使用してください」とか
「ページキャッシュは検出されませんでしたが、サーバーのレスポンスは良好です」とか表示されてるけど、
それはどうでもいい。
(調べたけどよくわからなかったので、あまり影響はないと判断した)
致命的な問題が解決したなら、オールオッケー!\(^o^)/
・・・と思いきや、
またまたエラーコードが!!
追記:PHP更新後「Warning: Undefined array key」エラーが出た場合の対処法
ここまでの対処法で『サイトヘルス』は正常になったのですが、
別ブログ(別のWPテーマを使っているブログ)の一部に、
変なエラーコードが表示されていることに気づきました。
Warning Undefined array key postpage_head~
上記は、WordPressの管理画面から「新規投稿」する際に表示されたエラーで、
管理画面の「プラグイン」も開かなくなる不具合が生じていました。
また、投稿済みのブログ記事にも、同様のエラーコードが表示されていました。
そこで試しに、PHPを8→7に戻したところ、エラーは消えました。
しかし、WPテーマの『Cocoon』を使用しているブログは、
「PHP8」でも正常に動いていましたので、
不具合の発生したWPテーマの制作元に、上記のエラー内容について報告しました。
PHPのバージョンを上げると、このような不具合が出ることが時々あります。
変なエラーコードが出た時は、PHPのバージョンを元に戻すと直ったりします。
落ち着いて対処しましょう。
まとめ WPサイトヘルス致命的な問題の対処法
今回は、「REST API でエラーが発生しました」の対処法として、
この2つの更新で解消できることを図解で説明しました。
PHPやワードプレスのバージョンを上げてもエラーが解消しない時は、プラグインを1つずつ無効化して、サイトヘルスのエラーが解消するか試してみてください。
PHP更新後に、WordPressに変なエラーコードが表示された際は、PHPのバージョンを元に戻してエラーが消えるか確認しましょう。