Using WordPress ‘deprecated_hook_trigger_error’ PHP filter

The deprecated_hook_trigger_error WordPress PHP filter determines whether to trigger deprecated hook errors, requiring WP_DEBUG to be defined as true.

Usage

add_filter('deprecated_hook_trigger_error', 'your_custom_function');
function your_custom_function($trigger) {
    // your custom code here
    return $trigger;
}

Parameters

  • $trigger (bool): Whether to trigger deprecated hook errors. Requires WP_DEBUG to be defined true.

More information

See WordPress Developer Resources: deprecated_hook_trigger_error

Examples

Suppressing deprecated hook errors

To suppress deprecated hook errors, return false.

add_filter('deprecated_hook_trigger_error', 'suppress_deprecated_hook_errors');
function suppress_deprecated_hook_errors($trigger) {
    return false;
}

Conditionally trigger deprecated hook errors

Trigger deprecated hook errors only for specific users.

add_filter('deprecated_hook_trigger_error', 'conditionally_trigger_errors');
function conditionally_trigger_errors($trigger) {
    $user = wp_get_current_user();
    if (in_array('administrator', $user->roles)) {
        return true;
    }
    return false;
}

Log deprecated hook errors

Log deprecated hook errors to a custom log file.

add_filter('deprecated_hook_trigger_error', 'log_deprecated_hook_errors');
function log_deprecated_hook_errors($trigger) {
    error_log('Deprecated hook error triggered', 3, '/path/to/your/custom-log.log');
    return $trigger;
}

Send email notifications for deprecated hook errors

Send an email notification when a deprecated hook error occurs.

add_filter('deprecated_hook_trigger_error', 'email_deprecated_hook_errors');
function email_deprecated_hook_errors($trigger) {
    $to = '[email protected]';
    $subject = 'Deprecated hook error';
    $message = 'A deprecated hook error has occurred.';
    wp_mail($to, $subject, $message);
    return $trigger;
}

Trigger custom error messages for deprecated hook errors

Display custom error messages when deprecated hook errors occur.

add_filter('deprecated_hook_trigger_error', 'custom_deprecated_hook_error_message');
function custom_deprecated_hook_error_message($trigger) {
    if ($trigger) {
        trigger_error('Your custom error message for deprecated hooks', E_USER_NOTICE);
    }
    return $trigger;
}