PHP8.1でWordPressを動かそうとしてみたら・・・
PHP8.1 Beta3を入れてみたのでWordPressが動くか試してみた
WordPressのバージョンは5.8と最新です
さて、早速ログイン・・・と思ったら予想通りエラー発生
Parse error: syntax error, unexpected token “readonly”, expecting
./wp-includes/general-template.phpの4824行目
function readonly( $readonly, $current = true, $echo = true ) {
所謂文法エラーでおかしなところはないんですよね
ひょっとしてメソッド名のreadonlyが予約語化とかで使えなくなってる?
と思って、テストファイルでreadonlyメソッドを作って動かしてみたら動かなかった、やっぱりか・・・
調べてみたら
【PHP8.1】読めるけど書けないプロパティが作れるようになる
ああなるほど、readonlyプロパティが出来たのね
WordPress開発陣はこのメソッド名を変更する必要がありそうですね
このメソッド名がどこでどのくらい使われているのかわからないけど
PHP8.1対応はいつになるだろうか
続いて
Yoast WP SEOプラグインのエラーを見て不思議に思った

存在しないテーブルを操作しようとして怒られているわけですが
データベース内を見てみると確かに存在しない
でもPHP8.1以外は動いているんですよ
存在しないテーブルを操作しようとしているのならバージョン関係なくエラーが出ると重いんですけどね
プラグイン側でPHPのバージョンを見てテーブル操作を変えているのでしょうか
プラグインのソースまで見るのめんどくさくなったので推測で終わっておきます
WordPress6.0に向けてPHP8への対応を進めているとの話をチラホラ聞きます
早期なるPHP8対応を楽しみにしています