投稿日:2023/06/06
PHP8にしたらBiz Calendarでエラーが出るときの対処法です。
手動で調整してください。
/public_html/wp-content/plugins/biz-calendar/biz-calendar.php on line 73
これと差し替えてもいいのですが、プラグイン一覧で最新版があるという表示が出てしまうので、テーマの__setting.phpにオリーブカートの更新通知を出さない記述も追加をお願いします。
初期制作のテーマにも追記しています。
状況
最終更新が6年前でPHP8の環境ではエラーでインストールできません。手動で調整してください。
修正方法
PHP8で廃止されたcreate_functionという関数を書き換えます。/public_html/wp-content/plugins/biz-calendar/biz-calendar.php on line 73
add_action( 'widgets_init', create_function( '', 'register_widget( "bizcalendarwidget" );' ) );
↓変更
add_action( 'widgets_init', function(){register_widget( "bizcalendarwidget" );});
補足
マニュアルからダウンロードできるデータは調整済みです。これと差し替えてもいいのですが、プラグイン一覧で最新版があるという表示が出てしまうので、テーマの__setting.phpにオリーブカートの更新通知を出さない記述も追加をお願いします。
初期制作のテーマにも追記しています。
// Biz Calendarはカスタムデータのみの使用になるため更新通知を非表示にする
add_filter('site_option__site_transient_update_plugins', 'hide_update_plugin_notice');
function hide_update_plugin_notice($data) {
$plugin_file = 'biz-calendar/biz-calendar.php';
if (isset($data->response[$plugin_file])) {
unset($data->response[$plugin_file]);
}
return $data;
}