#php8 の移行。いろいろエラーがでます。今月末で #php7 が終了。お急ぎください。

1.はじめに

 先週サイトから通知が来て、php7.4のサポートが11月28日で終了のため。使用できなくなり、大急ぎでphp8への検証を行い。まだ一部作業中ですが、トラブルのノウハウを共有します。1週間はかかりますのでお急ぎください。

https://spectrum-tech.co.jp/

2.php8移行のトラブル

 (1)wordpressの管理画面がエラーででない。

   原因1:wp-adminの権限

    755が必要。644しかないrw-r--r--, rwxr-xr-xへ サイトのフォルダ設定のコンパネから変更できます。

   原因2:wp-config.phpの設定

     以下の設定が何故か入っていて、php7では正常動作しますが、php8ではfatal error

                以下をコメントアウトで動きます。内容は、管理者権限時にフォルダのアクセスを751に変更するものです。

ーーーーーーーーーーーーーーーーーー

if(is_admin()) {

add_filter('filesystem_method', create_function('$a', 'return "direct";' ));

define( 'FS_CHMOD_DIR', 0751 );

}

ーーーーーーーーーーーーーーーーー

 (2)pluginでエラー

   私の場合は、以下のpluginでfatal errorでサイトが動作しません。

   wp-sitemanager

   wp-social bookmarking light

   停止してください。以下のようなものです。

ーーーーーーーーーーーーー

Fatal error: Declaration of Walker_pageNavi::start_lvl(&$output, $depth) must be compatible with Walker_Page::start_lvl(&$output, $depth = 0, $args = []) in D:\xampp\htdocs\wordpress\wp-content\plugins\wp-sitemanager\modules\site-structure.php on line 748

Fatal error: Unparenthesized `a ? b : c ? d : e` is not supported. Use either `(a ? b : c) ? d : e` or `a ? b : (c ? d : e)` in D:\xampp\htdocs\wordpress\wp-content\plugins\wp-social-bookmarking-light\vendor\twig\twig\lib\Twig\Node.php on line 42

ーーーーーーーーーーーーー

 (3)継続中のエラー

 ・トップページが表示されない。:他のページはok

  予想:index, front-page,sidebar,sidebar-left.php内に’’があり、php8ではfalseになる模様。nullに変えてテスト予定。

 ・site originのwidgetを使ってページを作成していますが、テーマのバージョンを上げると引継ぎされす、classic表示になる。HPでは正常ですが、修正が大変なので、バージョンアップを停止

3.php8の検証のため

 ーxamppなどを使ってローカル環境で検証することをお勧めします。かなり驚くようなエラー

 ーエラー発生時は、wp-config.php内でdebugモードにして解析しましょう。


4.問い合わせ先:本件は、対応しません

当社の強み

・無線LANの専門調査会社として、セキュリティから電波までの無線LANの専門性を強みとしております。

・無線歴35年、SI歴25年の専門家が対応します。

・自社所有の測定ツール(Linux,スペアナ、電波診断ツール、セキュリティ診断ツール、トラヒック診断ツール)により迅速に対応します。

スペクトラム・テクノロジー株式会社

https://spectrum-tech.co.jp

電話:04-2990-8881

email:sales1@spectrum-tech.co.jp

担当:村上


Spectrum Technology

無線の可視化により、快適な無線LAN(WiFi)、M2M環境を提供します。電波診断、セキュリティ診断による現状把握と対策を提供します。自社保有の測定ツールと無線歴35年により無線LANのトラブル対応力No.1を目指します。