WordPressを更新したらエラーが出るようになった!デバッグモードをFalseにして見ないことにすればよい?

wp-error

頻繁にアップデートがかかるWordPressですが、テスト環境で試さずに本番環境で一気に更新をしてしまってエラーが出た!なんてことはよくある話です。

本来なら是非ともテスト環境で試してからアップデートしていただきたいところですが、自サイトだからいいや、と思って私も本番でいきなりポチッとしてしまいます。

WordPress4.3にアップデートしたら、出ました。ドキッとするカラーのNotice表示が。

wp-error

対症療法(とりあえず見なかったことにする)

デバッグモードをオフにします

wordpressをインストールしているフォルダ直下にあるwp-config.phpを開き、

//デバッグモードの設定がtrueになっている場合はfalseに設定します。

//define(‘WP_DEBUG’, true);

define(‘WP_DEBUG’, false);

これで、おそらく見なかったことにできると思います。

だけど、それは根治療法ではない・・

根治療法(エラー部分をきちんと修正するということ)

お使いのテーマをデフォルトテーマなどに切り替えてみて、それでもエラーが出る場合は導入しているプラグインが原因かもしれません。プラグインのアップデートを待つという対処もできると思います。

でも、デフォルトテーマに切り替えたらエラーが消える!という場合はお使いのテーマ内に原因があるということが考えられます。エラーメッセージをよく読んでみることにします。

私の場合、こんなメッセージでした・・

Notice: 呼び出された WP_Widget のコンストラクターメソッドはバージョン 4.3.0 から<strong>非推奨</strong>になっています! 代わりに <pre>__construct()</pre> を使ってください。 in /var/www/wordpress/wp-includes/functions.php on line 3457

エラーの場所が in wp-includes/functions.php on line 3457 となっているので、使っているテーマは原因ではないと思うかもしれませんが、「呼び出された WP_Widget のコンストラクターメソッドは」とあるので、テーマ内でWP_Widgetを非推奨の呼び出しを行うことによりエラーが発生していると考えられます。

使っているテーマ内でWP_Widgetを検索すると、ありました。

extends WP_Widgetで子クラスを作っていました。今回のエラーはこの子クラスを推奨される形に修正することで解消しました。

エラーが出た場合は、まずデフォルトテーマに切り替えてみて

エラー原因の切り分けには、まずテーマを切り替えてみてエラーが消えるかどうか、プラグインを停止してみてエラーが消えるかどうか、を行ってみると良いと思います。それに加えて、エラーメッセージをよく読むと解決の糸口が見つかります!