定数のデバッグ

開発環境内でテーマを作成する際は、テーマが通知やエラーを生成していないことを確認するために、常にデバッグを有効にする必要があります。WordPressは、インストールのwp-config.phpファイルに設定できるいくつかの定数を提供しています。

  1. ``````bash
  2. /**
  3. * For developers: WordPress debugging mode.
  4. *
  5. * Change this to true to enable the display of notices during development.
  6. * It is strongly recommended that plugin and theme developers use WP_DEBUG
  7. * in their development environments.
  8. *
  9. * For information on other constants that can be used for debugging,
  10. * visit the documentation.
  11. *
  12. * @link https://wordpress.org/documentation/article/debugging-in-wordpress/
  13. */
  14. define( 'WP_DEBUG', false );
  15. `

ここで、以下のセクションで説明されているデバッグ定数を設定します。

WP_DEBUG

  1. `````WP_DEBUG````` PHP定数は、WordPressインストールで組み込みの「デバッグ」モードをトリガーするために使用されます。これにより、テーマ内のエラーを表示できます。他のすべてのデバッグ定数と併用して使用する必要があります。
  2. `````wp-config.php`````ファイルにこの行が表示されるはずです:
  3. ``````bash
  4. define( 'WP_DEBUG', false );
  5. `

デバッグを有効にするには、trueに設定されていることを確認してください。以下のように:

  1. define( 'WP_DEBUG', true );

WP_DISABLE_FATAL_ERROR_HANDLER

WordPress 5.2 致命的エラーハンドラーを導入しました これは、テーマやプラグインが致命的なエラーを引き起こしたときに、ユーザーがサイトからロックアウトされないようにするためのものです。これは、運用中のサイトにとって素晴らしい機能です。しかし、開発中には問題を引き起こし、エラーを完全に診断するのを妨げる可能性があります。

このため、開発中はこれを無効にして、修正できるまで問題が発生していることを確認する必要があります。wp-config.phpファイルにこの定数を定義します:

  1. define( 'WP_DISABLE_FATAL_ERROR_HANDLER', true );

WP_DEBUG_DISPLAY

  1. 画面上のデバッグメッセージを無効にしたい場合は、`````WP_DEBUG_DISPLAY``````````false`````に設定できます。`````wp-config.php`````ファイルで:
  2. ``````bash
  3. define( 'WP_DEBUG_DISPLAY', false );
  4. `

WP_DEBUG_LOG

  1. 一般的に、`````WP_DEBUG_DISPLAY`````を介して画面上のデバッグメッセージをオフにした場合、これらのメッセージをデバッグログに保存することを選択する必要があります。
  2. ログを有効にするには、`````WP_DEBUG_LOG`````定数を`````true`````として`````wp-config.php`````ファイルに定義します:
  3. ``````bash
  4. define( 'WP_DEBUG_LOG', true );
  5. `

プラグイン

テーマのデバッグに役立ついくつかのプラグインがあります。それぞれはWordPressプラグインディレクトリにホストされています:

  • Debug Bar: WordPressツールバー内でデバッグのための中央の場所を提供します。
  • Query Monitor: データベースクエリ、PHPエラー、フックとアクション、ブロックエディタブロック、エンキューされたスクリプトとスタイルシート、HTTP API呼び出しなどのデバッグを可能にします。
  • Log Deprecated Notices: テーマ内の不正確で非推奨の関数やファイルの使用を記録します。