Blog
ブログ
Warning: Undefined array keyが出たら確認すること!
目次
エラー(Warning: Undefined array key)の発生
我々ホームページ制作のプロは、クライアント様のホームページの改修を行う際、いきなり本番環境に変更を加えるのではなく、必ずローカル環境で作業を行い、問題がないことを確認してから本番環境に反映させます。
とあるクライアント様から改修のご依頼をいただき、いつも通りローカル環境で作業を行おうと思い、サイトにアクセスをしようとしたところ、下記のようなエラー画面が表示されてしまいました。
「Warning: Undefined array key 1 in /Users/hidetadasanada/Local Sites/family-aba-supports/app/public/wp-includes/l10n/class-wp-translation-file-mo.php on line 161」
というエラー表記がひたすら何行も表示されています。
エラーが発生した原因
当該エラーは「PHP」という言語を使用している場合に発生するエラーです。
エラーが発生したクライアント様のWEBサイトはWordpressで構築しており、WordpressはPHPで動いているシステムとなるため、このようなエラーがたまに発生してしまいます。
そして今回、このエラーが発生した原因としては、Wordpressの最新バージョンと使用しているPHPバージョンの相性が悪かったと考えております。
「PHP8.0」より前までのPHPバージョン(PHP7.4以前)では、ある程度のミスがあったとしても動いてくれていたものが「PHP8.0」以降ではより厳正化されているようです。
そして、最新バージョンにアップデートしたWordpressのプログラム内において、これまでは動いていた程度のミスがあり、厳正化されたPHPバージョン(PHP8.0以降)で引っかかってしまったと考えられます。
エラーの解決方法
解決方法としては、WordpressがPHP8.0以降に対応したアップデートを行うまでPHPバージョンを「PHP7.4」以前に下げるのが良いかなと思います。
下記はローカル環境を構築するためのツールを例にしておりますが、エックスサーバーやロリポップなどのレンタルサーバーでも同じです。それぞれ管理画面よりPHPバージョンを変更できるようになっています。
逆にWordpressのバージョンを変えるという方法もありますが、そちらはあまりおすすめできません。
WordPressは世界で最も使われている人気システムということもあり、その分、悪意の脅威に狙われることも多く、常にセキュリティー強化を行なっております。
なので、基本的には最新のアップデートを毎回行い、常に最新バージョンのWordpressを使用するのがおすすめとなり、古いバージョンを使用するのはおすすめできません。
【最後に】Wordpressを最新バージョンにアップデートしたからといって必ずしもエラーが発生するとは限らない
WordPressを最新バージョンにアップデートしたからといって必ずしも今回のようなエラーが発生するとは限りません。
あくまで、使用しているPHPのバージョンが「PHP8.0」以降になっている場合であり、PHP7.4以前を使用していればエラーは起こらないと思われます。
そして、もしも当該エラーが発生したとしても、PHPバージョンを確認し、今回の内容に当てはまっていればバージョンを変更すれば良いだけです。
最初は少し驚くかもしれませんが、冷静に対応しましょう。