wp-login.phpのデバッグ忘れ(WordPressのデバッグ方法)

WordPressは頻繁にバージョンアップします。
バージョンアップでセキュリティーが強化されたりするわけで、WordPressを使ったサイトは最新の状態を維持する様に、常に最新のバージョンにしておくのがサイト管理の基本になっているわけです。

しかしこのバージョンアップで機能も向上します。その機能向上の為、使えなくなったり、非推奨となるテンプレートタグが出てくるわけです。

それに気が付かずに放置していると、表示がおかしくなる・動作がおかしくなる・まともに動かないなどという危険な状態になるんですね。

そうならない様に事前にチェックする為、またthemeやplugin開発時のデバッグの為に、WordPressにはデバッグモードが用意されているわけです。

デバッグモードを有効にするには、サイトのディレクトリ直下に有るwp-config.phpの84行位に有る define(‘WP_DEBUG’, false); を define(‘WP_DEBUG’, true); 変更・保存してやれば良いだけです。
(余談ですが、wp-config.phpは、1つ上の階層の非公開ディレクトリへ移動させた方がセキュリティー的に良いみたい。)

テンプレートに何か問題が有る場合、ブラウザーでサイトを表示させるとエラーメッセージが表示されます。
functions.php内に原因が有る場合は大体ページ冒頭に、plug-inの場合もページ冒頭か、そのプラグインで表示されている要素の始めに、テンプレートファイルの場合は、そのテンプレートに内容が表示されている部分の始めの箇所に、エラーメッセージは表示されます。

因にこのデバッグモードはオプションが有りまして、
① wp-contentフォルダ内にdebug.logとして記録させたり
② ブラウザには表示させなくしたりできます。

デバッグモードの詳細や、他のオプションについては
CodexのDebugging_in_WordPress
で詳しく説明されています。

前置きが長くなりましたが、これからが本題。

今迄デバッグした後は、wp-config.php の define(‘WP_DEBUG’, true); を元の define(‘WP_DEBUG’, false); に戻して保存し、wp-config.phpのパーミッションを400にして書き込みできなくした後、WordPressをログアウトさせていました。それが習慣みたいになってました。

それがたまたま手順を逆にしてしまい、wp-config.php を define(‘WP_DEBUG’, false); に戻す前にWordPressのログアウトしてしまったんですね。

すると wp-login.php のログイン画面上に

get_bloginfo(‘home’); は2.2から非推奨

とエラーメッセージが表示されたんですよ。

2.2からとはWordPressのver.2.2からと言う事です。WordPressって、今のver.は4.5.2なんですよ。

「ver.2.2って、いったいいつの時代の事なんだよ!」
「どれほどの年月、気が付かずにいたの?」

我ながら、自分の間抜けさに飽きれてしまいましたよ。

原因のget_bloginfo(‘home’) はログイン画面のカスタマイズで使っていたものです。get_bloginfo(‘home’) はサイトアドレスを取得するのに使っていましたが、2.2以降は非推奨です。
現在では get_bloginfo(‘url’)  か home_url() を使う事になっています。

しかし、ログイン画面のデバッグと言うのは盲点でした。
上にも書いた方法で、debug.logを残す様にしておけばよかったんですね。

これはデバッグの盲点でした。お気を付け下さい。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください