WordPress

PHPエラーの各種覚書

WordPressでテーマやプラグインを古い記述のまま本体、サーバ、PHPのバージョンをアップデートすると各所でエラーになるという事象を繰り返しているので今後の自分のための覚書。
原因はほぼPHP8の記述にしろという内容みたいです。

Fatal error: Uncaught Error: Undefined constant "modified" in ~~

wp-content/themes/テーマ名/functions.php on line 82
テーマ内でエラー。modifiedを囲めというお叱りのよう。

変更前

'orderby' => modified,

変更後

'orderby' => 'modified',

Warning: Undefined variable $msg in ~~

指定している変数が定義されていない場合に発生するエラー。今回の場合は$msgを定義しろってことみたいです。

変更前

$msg .= 'ほにゃららら';

としていたので、その前に定義を加えた。

変更後

$msg = '';
$msg .= 'ほにゃららら';

参考:https://it-column.mjeinc.co.jp/archives/3513

Deprecated: preg_replace(): Passing null to parameter #3 ($subject) of type array|string is deprecated in~~

ちょっと厄介なエラーだった。preg_replaceまわりを調べてたら全然ちがうところが原因だった。
該当サイトでは「Lightning」テーマを利用していたんだけど、そのフッターの「Powerd by ~」を削除するために記述していたコードが原因。

変更前

add_filter( 'lightning_footerPoweredCustom' , function(){ return; } );

変更後

add_filter( 'lightning_footerPoweredCustom' , '__return_false' );

参考:https://qiita.com/taktakq/items/5ea66c3bae2f17214dff

returnのみの記述が良くなかったかも…。
参考:https://php4wordpress.calculator.jp/php/return-functions/

  • この記事を書いた人

ゆず

忘れないように自分の覚書と、誰かも困っているかもしれないので参考になればいいなくらいの軽い備忘録です。
一杯おごる

-WordPress