BizVektorテーマを利用しているホームページでPHP8.1にしたらエラーが出たので修正してみた。
BizVektorで提供されているWordPressのテーマ(現在アップデート終了)ですがこれをPHP8.1で動作させたいということでエラーがでた箇所のみ修正して動作させてみました。
・エラーファイル:theme-options.php
・エラー内容:「Uncaught Error: Call to undefined function each()」 in /wp-content/themes/biz-vektor/inc/theme-options.php:791 Stack trace:
PHP8 で each 関数が削除されたのでこのようなエラーになっています。あとは、該当箇所を修正するだけです。
・問題の箇所
while ( list($k,$v) = each( $corlors ) ) { reset( $types ); while ( list($kk,$vv) = each( $types ) ) { echo ".{$k}{$types_o[$kk]},.{$k}{$types_o[$kk]}h:hover,"; echo ".{$k}{$kk},.{$k}{$kk}_hover:hover{{$vv}: {$v};}"; } }
qiitaに手本となる情報がありましたので参考URLとして記述します。
上記のサイトを参照して、コードを記述していきます。
while ($current = current($corlors)) { $k = key($corlors); $v = $current; reset( $types ); ~ 略 ~ next($corlors); }
これでエラーがでなくなりました。このような感じでワードプレス上のエラーの箇所を修正していきました。
テンプレートサポートが終わってしまったがそのまま利用したいけど、今、ホームページ上で、エラーが発生しているということがありましたらお気軽にご相談ください。
なるべくですが時代とともにいろいろな箇所が変更となっているので最新のテーマでWEBサイトのリニューアルを行うことをおすすめ致します。