wp_is_fatal_error_handler_enabled()


WordPressの関数wp_is_fatal_error_handler_enabled()は、致命的なエラーハンドラーが有効かどうかをチェックします。

構文

wp_is_fatal_error_handler_enabled();
  • (bool) — 致命的なエラーハンドラーが有効な場合はtrue、無効な場合はfalseを返します。

例1: 基本的な使用法

エラーハンドラーの状態を確認します。

if(wp_is_fatal_error_handler_enabled()){error_log('Fatal error handler is active.');}

例2: デバッグモードでのチェック

デバッグ中にエラーハンドラーの状態をログに記録します。

add_action('init',function(){if(wp_is_fatal_error_handler_enabled()){error_log('Debug: Fatal error handler enabled');}});

例3: プラグイン有効化時のチェック

プラグインが有効化されたときにエラーハンドラーを確認します。

register_activation_hook(__FILE__,function(){if(!wp_is_fatal_error_handler_enabled()){update_option('fatal_error_handler_disabled',true);}});

例4: 管理画面での通知表示

管理画面でエラーハンドラーの状態を通知します。

add_action('admin_notices',function(){if(!wp_is_fatal_error_handler_enabled()){echo'<div class="notice notice-warning"><p>致命的なエラーハンドラーが無効です</p></div>';}});

例5: カスタムエラーログの条件分岐

エラーハンドラーの状態に基づいてログを分岐します。

function log_errors($message){if(wp_is_fatal_error_handler_enabled()){error_log($message);}else{file_put_contents(ABSPATH.'custom_errors.log',$message,FILE_APPEND);}}

例6: テーマ開発時のチェック

テーマのfunctions.phpでエラーハンドラーを確認します。

if(!function_exists('wp_is_fatal_error_handler_enabled')||!wp_is_fatal_error_handler_enabled()){trigger_error('Fatal error handler is required',E_USER_WARNING);}

例7: マルチサイト環境での使用

マルチサイト環境で各サイトのエラーハンドラー状態をチェックします。

switch_to_blog(1);if(wp_is_fatal_error_handler_enabled()){restore_current_blog();return true;}

注意点

  • この関数はWordPress 5.2以降で利用可能です。
  • 本番環境では致命的なエラーハンドラーを有効にすることが推奨されます。
  • この関数の結果を過度に依存しないでください。

関連機能: