Pocket

WordPresss4.0から5.0.3へのバージョンアップでエラー

とあるお仕事でWordPressのバージョンが古すぎて不安なので、バージョンアップを行ってほしいという依頼を受けました。その際にテーマファイルでウィジェットの定義をしている箇所で非推奨のエラーが発生していたので、その対処法をメモ。エラーの内容は以下の通り。

コンストラクター名の書き換え

まずはコンストラクターそのものの書き換え。コンストラクターをクラス名で指定してあったので、マジックメソッド__construct()に書き換えました。

これでOK。

親クラスのコンストラクター呼び出しのエラー解消

WordPressのウィジェットを拡張する際にWP_Widgetクラスを継承して作成します。その際に親クラスのコンストラクターを呼び出すのですが、その記述もマジックメソッドで書き換えます。

できた!\(^o^)/
これでNoticeエラーが解消されました。

PHP7から非推奨になるものは早めに対処

PHPのマニュアルサイトにも書いていますけど、PHP7から非推奨になるのでWordPress云々ではないから対応しましょう。以下、マニュアルサイトからの抜粋。

警告
古い形式のコンストラクタは PHP 7.0 で 非推奨 となりました。 将来のバージョンで削除されるでしょう。新しいコードでは常に __construct() を使うべきです。

引用:PHP: コンストラクタとデストラクタ – Manual

今回のエラーは、「PHP 7.0.x で推奨されなくなる機能」での内容でした。PHPのバージョン、WordPressのバージョンアップ時はきちんとチェックするクセをつけようと思います。
やっているつもりではありますけど (;^_^A