Wordpressの自作テーマでサイドバーウィジットにお気に入り記事一覧を作る
shiro-changelife
シロウブログ「change life」
こんにちは、シロウです。
今日、ウィジットに項目を追加しようと思って、色々と調べつつコードをぺたぺたとコピペしたりしてると、下記のエラーにでくわしました。
Deprecated:My_Widgetで呼び出されたWP_Widgetのコンストラクターメソッドはバージョン4.3.0から非推奨になっています ! 代わりに __construct() を使ってください。
見ての通り、WP_Widget(コンストラクターメソッド)が非推奨だから__construct()に置き換えてくださいってことですね。
あとコンストラクター名も変更しないとです。
記事にするほどでもないかもしれませんが、一応解消できたので方法を解説しておきます(*・ω・)ノ
僕の場合は下記のようなメソッドを記述していました。
class My_Widget extends WP_Widget
{
//コンストラクタ
//自作ウィジェットを登録するみたいな感じ
public function My_Widget()
{
parent::WP_Widget(
false,
$name = 'オススメ記事',
array( 'description' => 'サイドバーに表示する記事を設定', )
);
}
~~~~~~~~~中略~~~~~~~
}
なので、この「My_Widget」と「WP_Widget」を書き換えてあげればいいだけですね。
書き換えると下記のようになります。
class My_Widget extends WP_Widget
{
//書き換え
public function __construct()
{
//書き換え
parent::__construct(
false,
$name = 'オススメ記事',
array( 'description' => 'サイドバーに表示する記事を設定', )
);
}
これで無事にエラーも消えました☺️
今回コピペで非推奨コードを使ってしまっていた僕が言うのも何ですが、非推奨コードはやはりできる限り使わないようにしましょうw
警告:古い形式のコンストラクタは PHP 7.0 で 非推奨 となりました。 将来のバージョンで削除されるでしょう。新しいコードでは常に __construct() を使うべきです。
PHPの公式リファレンスにも上記のように書かれていまして、将来古いコンストラクタが削除されて、今まで正常に動いていたのに突然おかしくなる・・・とか凄く面倒ですからね。
暇な時間を見つけて、非推奨コードをさっと見ておくだけでも割といいかもと思う日でした。
さて、今回はこれにて終了します。それではまたっ(*・ω・)ノ