# _deprecated_constructor()

URL: https://chugunov.pro/api-wordpress/functions/_deprecated_constructor/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 4.3.0.

> Устаревший элемент. Помечен устаревшим с версии 5.4.0.

## Сигнатура

```php
_deprecated_constructor( string $class_name, string $version, string $parent_class = '' )
```

## Описание

Похожа на _deprecated_function() , но с другими строками. Используется для удаления конструкторов в стиле PHP4.
Текущее поведение — вызывать пользовательскую ошибку, если WP_DEBUG равно true.
Эту функцию следует использовать в каждом устаревшем методе-конструкторе в стиле PHP4.

## Параметры

- `$class_name` `string` — обязательный. Класс, содержащий устаревший конструктор.
- `$version` `string` — обязательный. Версия WordPress, в которой функция стала устаревшей.
- `$parent_class` `string` — необязательный, по умолчанию `''`. Родительский класс, вызывающий устаревший конструктор.

## Исходный код

Файл: `wp-includes/functions.php:5632`

```php
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 ) {
				$message = 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>'
				);
			} else {
				$message = 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>'
				);
			}
		} else {
			if ( $parent_class ) {
				$message = 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>'
				);
			} else {
				$message = 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>'
				);
			}
		}

		wp_trigger_error( '', $message, E_USER_DEPRECATED );
	}
}
```

## История изменений

- 5.4.0 — The error type is now classified as E_USER_DEPRECATED (used to default to E_USER_NOTICE).
- 4.5.0 — Added the $parent_class parameter.
- 4.3.0 — Introduced.

## Связанные

Использует: [`wp_trigger_error`](https://chugunov.pro/api-wordpress/functions/wp_trigger_error/), [`__`](https://chugunov.pro/api-wordpress/functions/__/), [`do_action`](https://chugunov.pro/api-wordpress/functions/do_action/), [`apply_filters`](https://chugunov.pro/api-wordpress/functions/apply_filters/).
Используется в: `WP_User_Search::WP_User_Search`, `POMO_CachedFileReader::POMO_CachedFileReader`, `POMO_CachedIntFileReader::POMO_CachedIntFileReader`, `POMO_FileReader::POMO_FileReader`, `POMO_StringReader::POMO_StringReader`, `POMO_Reader::POMO_Reader`, `Translation_Entry::Translation_Entry`, `WP_Widget_Factory::WP_Widget_Factory`, `WP_Widget::WP_Widget`.

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/_deprecated_constructor/
