WordPressのデバッグモードを有効にしたら警告がでる問題についてメモ

WordPressのデバッグモードをtrueにするとログイン画面でエラーがでてログインができなくなったのでメモ。

エラー内容

Warning: Cannot modify header information – headers already sent by (output started at /Applications/MAMP/htdocs/フォルダ名/wp-includes/functions.php:3378) in /Applications/MAMP/htdocs/アカウント名/wp-login.php on line 422

ログインできるように戻す方法

おそらく以下の2つの方法のどちらかでログインはできるようになると思います。

BOMなしのUTF-8で保存する

調べてみると、BOMなしのUTF-8で保存していることが原因でエラーが出ているという記事がたくさん出てきました。
一応該当しそうなファイルのフォーマットを確認しましたが、それらしきものはなかったので今回はこれが原因ではなさそうです。

// 注意:
// Windows の “メモ帳” でこのファイルを編集しないでください !
// 問題なく使えるテキストエディタ
// (http://wpdocs.sourceforge.jp/Codex:%E8%AB%87%E8%A9%B1%E5%AE%A4 参照)
// を使用し、必ず UTF-8 の BOM なし (UTF-8N) で保存してください。

BOMについて。
【Mac】UTF-8 の BOM なし (UTF-8N) と「CotEditor」おぼえがき

デバッグモードを無効にする

define(‘WP_DEBUG’, true);

define(‘WP_DEBUG’, false);

にすればエラーは表示されなくなるのでログインが可能になります。
デバッグモードを有効にするとエラーは表示されるので根本的な解決にはなっていません。

これの可能性も。
「headers already sent」と表示されるとき

メモ

register_sidebar_widget の使用はバージョン 2.8 から非推奨になっています。

Warning: Cannot modify header information – headers already sent by (output started at /Applications/MAMP/htdocs/フォルダ名/wp-includes/functions.php:3378) in /Applications/MAMP/htdocs/アカウント名/wp-login.php on line 422

Warning: Cannot modify header information – headers already sent by (output started at /Applications/MAMP/htdocs/フォルダ名/wp-includes/functions.php:3378) in /Applications/MAMP/htdocs/アカウント名/wp-login.php on line 435

3378行目はこんなコード。

if ( function_exists( '__' ) ) {
if ( ! is_null( $replacement ) )
trigger_error( sprintf( __('%1$s is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'), $function, $version, $replacement ) );
スポンサーリンク
RESAD
RESAD

シェアする

  • このエントリーをはてなブックマークに追加

フォローする

スポンサーリンク
RESAD