WordPressでエラー調査を行う際、管理画面やフロント画面にエラーを表示せず、ログだけに出したい
というケースは非常に多くあります。
本記事では、そのための定番設定と仕組みを解説します。
目次
管理画面にエラーを出さず、ログだけ取得する設定
wp-config.php に以下のコードを追加します。
define('WP_DEBUG', true);
if ( WP_DEBUG ) {
define('WP_DEBUG_LOG', true);
define('WP_DEBUG_DISPLAY', false);
@ini_set('display_errors', 0);
}この設定により、エラーは画面に表示されず、ログファイルにのみ記録されます。
各設定の意味
以下、解説です。
WP_DEBUG
define('WP_DEBUG', true);WordPressのデバッグモードを有効化します。
これを true にしない限り、WordPressのエラーログ機能は動作しません。
WP_DEBUG_LOG
define('WP_DEBUG_LOG', true);PHPエラー・Warning・Notice などをwp-content/debug.log に出力します。
※ ファイルが存在しない場合は自動生成されます(書き込み権限が必要)。
WP_DEBUG_DISPLAY
define('WP_DEBUG_DISPLAY', false);エラーを画面上に表示しない設定です。
- フロントページ
- 管理画面(wp-admin)
どちらにもエラーが表示されなくなります。
display_errors の無効化
@ini_set('display_errors', 0);PHPの設定レベルでも強制的に
画面表示をOFFにしています。
サーバー設定によって WP_DEBUG_DISPLAY が効かない場合の保険として有効です。
エラーログの保存先
通常、エラーは以下に出力されます。
/wp-content/debug.logこのファイルを確認することで、どのテーマ・プラグイン・ファイルでエラーが起きているかを把握できます。
この設定で検知できるエラー範囲
- アクセスされたページのPHPエラー
- 管理画面操作時のエラー
- Ajax / REST API 実行時のエラー
- wp-cron 実行時のエラー
※ 実行されない処理(未アクセスページなど)のエラーは検知されません。
本番環境での注意点
WP_DEBUG = true のまま運用すると、
- ログが肥大化する
- 内部構造がログに残る
といったリスクがあります。
エラー調査が終わったら必ず無効化しましょう。
define('WP_DEBUG', false);
define('WP_DEBUG_LOG', false);まとめ
- 画面にエラーを出さず、安全に調査したい場合に最適
- debug.log を確認するだけで原因特定がしやすい
- 調査用途として定番かつ実用的な設定
WordPressのエラー調査では、まずこの設定を入れるのが基本です。

