PHPバージョンアップしたらcreate_functionでエラーが出たので書き換えた
PHP 7.4からPHP 8.3へバージョンアップしたところ、WordPressが「重大なエラーが発生」的な感じで全く表示できなくなってしまった。
WordPressのリカバリーモードなるものを初めて使用したところ、自作ウィジェットのcreate_functionでエラーになっているとわかった。
Uncaught Error: Call to undefined function create_function()
「create_function()はPHP 7.2で非推奨となり、PHP 8.0では完全に削除されました」とのこと。
class クラス名 extends WP_Widget {
public function __construct() {
...
}
}
add_action('widgets_init', create_function('', 'return register_widget("クラス名");'))
書き換え後、
add_action('widgets_init', function() {
return register_widget("クラス名");
});
これでエラー解消。