反省・備忘録も含め、サイトヘルスの改善なども含め、不用意にサイトテーマをいじると危ないということと、エラーをどうやって修正したかを記録しておきます。
Warning: Use of undefined constant php – assumed ‘php’ (this will throw an Error in a future version of PHP)というエラーがサイトの最上部に!
サイトに関して、「エラーメッセージ」が出ているというご指摘をいただき、サイトを確認すると、
Warning: Use of undefined constant php – assumed ‘php’ (this will throw an Error in a future version of PHP) in /home/(中略)/head-insert.php on line 1
というエラーメッセージが。
午前・午後といろいろな解決方法を調べていましたが、心当たりは2点。
当サイトはさくらサーバーを利用しておりますが、
- さくらサーバーのPHPを7.3から7.4に変更したこと
- コントロールパネルのPHP編集で、php.iniをいじったこと
このどちらかが原因だろうな、と考えていました。
そこでまず、PHPを7.3に戻してみる。
・・・エラーは全然改善されない。
次に、Wordpressの機能である、「サイトヘルス改善」で、
オプションのモジュール imagickがインストールされていないか、無効化されています。
というメッセージ。
この1カ所(実はもう「未使用テーマが2つ残っていて削除できない、というエラーがあったのですが、バックアップ後、ファイルマネージャー未使用テーマ2つを削除するという力業で解決)がきになり、Imagickをインストールする方法を調べてみました。
そこのたどり着いたサイト(imagickがインストールされていない」解決方法【WPサイトヘルス】)では、
- さくらサーバーのコントロールパネルにログイン
- php.iniを編集し、「extension = imagick.so」というコードを挿入
(サイトヘルスは解決し、このサイトの情報は正しく、エラーの原因は他にありました。ですので、このページはとても有用だったのです・・・)
さらに他の項目も確認し、PHPのバージョンが7.3で設定されていたようでしたので、7.4のバージョンに置き換えました。
・・・・ここからが試行錯誤の始まりでした。
画面上部に、非常に目立つエラー画面が。
そこには、Warning: Use of undefined constant php – assumed ‘php’ (this will throw an Error in a future version of PHP) in /home/HOGEHOGE/cocoon-child-master/tmp-user/head-insert.php on line 1
というエラーメッセージが。
head-insert.phpというファイルの1行目に、未定義の定数を使った表記がありますよ、というエラーメッセージ。
そこで、ファイルマネージャーを使って、該当のファイルを見ると、「どこがおかしいのかわからない」という状況。
そこで次は、PHPのバージョンを7.3に戻したり、ルートディレクトリに近い部分に生成されたphp.iniファイルを削除しましたが、症状は改善されず。
どうしようか・・と考えているときに、「そうだ、利用しているテーマcocoonの子テーマファイルを再ダウンロードして、設定を確認しよう」と、サイトにアクセス、子テーマをダウンロードし解凍、head-insert.phpの内容を、さくらサーバーのファイルマネージャーで、コピー&ペーストで貼り付け。
そして数分待つと、エラー表示のない画面に・・・。
というわけで、PHP7.4の更新の影響があったのかは不確定なままですが、最初のImagickをインストールする方法については、影響がなかったことがわかりました。
WordPressに関してカスタマイズ・変更を試すときは、1つずつ、段階的に進めていくべきだということを改めて痛感しました・・・・。
とりあえず、無事に表示されるようになり、ひと安心です。