WordPress Version: 6.2
/**
* Marks a constructor as deprecated and informs when it has been used.
*
* Similar to _deprecated_function(), but with different strings. Used to
* remove PHP4 style constructors.
*
* The current behavior is to trigger a user error if `WP_DEBUG` is true.
*
* This function is to be used in every PHP4 style constructor method that is deprecated.
*
* @since 4.3.0
* @since 4.5.0 Added the `$parent_class` parameter.
* @since 5.4.0 This function is no longer marked as "private".
* @since 5.4.0 The error type is now classified as E_USER_DEPRECATED (used to default to E_USER_NOTICE).
*
* @param string $class_name The class containing the deprecated constructor.
* @param string $version The version of WordPress that deprecated the function.
* @param string $parent_class Optional. The parent class calling the deprecated constructor.
* Default empty string.
*/
function _deprecated_constructor($class_name, $version, $parent_class = '')
{
/**
* Fires when a deprecated constructor is called.
*
* @since 4.3.0
* @since 4.5.0 Added the `$parent_class` parameter.
*
* @param string $class_name The class containing the deprecated constructor.
* @param string $version The version of WordPress that deprecated the function.
* @param string $parent_class The parent class calling the deprecated constructor.
*/
do_action('deprecated_constructor_run', $class_name, $version, $parent_class);
/**
* Filters whether to trigger an error for deprecated functions.
*
* `WP_DEBUG` must be true in addition to the filter evaluating to true.
*
* @since 4.3.0
*
* @param bool $trigger Whether to trigger the error for deprecated functions. Default true.
*/
if (WP_DEBUG && apply_filters('deprecated_constructor_trigger_error', true)) {
if (function_exists('__')) {
if ($parent_class) {
trigger_error(sprintf(
/* translators: 1: PHP class name, 2: PHP parent class name, 3: Version number, 4: __construct() method. */
__('The called constructor method for %1$s class in %2$s is <strong>deprecated</strong> since version %3$s! Use %4$s instead.'),
$class_name,
$parent_class,
$version,
'<code>__construct()</code>'
), E_USER_DEPRECATED);
} else {
trigger_error(sprintf(
/* translators: 1: PHP class name, 2: Version number, 3: __construct() method. */
__('The called constructor method for %1$s class is <strong>deprecated</strong> since version %2$s! Use %3$s instead.'),
$class_name,
$version,
'<code>__construct()</code>'
), E_USER_DEPRECATED);
}
} else if ($parent_class) {
trigger_error(sprintf('The called constructor method for %1$s class in %2$s is <strong>deprecated</strong> since version %3$s! Use %4$s instead.', $class_name, $parent_class, $version, '<code>__construct()</code>'), E_USER_DEPRECATED);
} else {
trigger_error(sprintf('The called constructor method for %1$s class is <strong>deprecated</strong> since version %2$s! Use %3$s instead.', $class_name, $version, '<code>__construct()</code>'), E_USER_DEPRECATED);
}
}
}