# validate_plugin()

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

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

## Сигнатура

```php
validate_plugin( string $plugin ): int|WP_Error
```

## Описание

Проверяет, что главный файл плагина существует и является допустимым плагином. См. validate_file() .

## Параметры

- `$plugin` `string` — обязательный. Путь к файлу плагина относительно каталога плагинов.

## Возвращаемое значение

`int|WP_Error` — WP_Error

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

Файл: `wp-admin/includes/plugin.php:1109`

```php
function validate_plugin( $plugin ) {
	if ( validate_file( $plugin ) ) {
		return new WP_Error( 'plugin_invalid', __( 'Invalid plugin path.' ) );
	}
	if ( ! file_exists( WP_PLUGIN_DIR . '/' . $plugin ) ) {
		return new WP_Error( 'plugin_not_found', __( 'Plugin file does not exist.' ) );
	}

	$installed_plugins = get_plugins();
	if ( ! isset( $installed_plugins[ $plugin ] ) ) {
		return new WP_Error( 'no_plugin_header', __( 'The plugin does not have a valid header.' ) );
	}
	return 0;
}
```

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

- 2.5.0 — Introduced.

## Связанные

Использует: [`get_plugins`](https://chugunov.pro/api-wordpress/functions/get_plugins/), [`validate_file`](https://chugunov.pro/api-wordpress/functions/validate_file/), [`__`](https://chugunov.pro/api-wordpress/functions/__/), `WP_Error::__construct`.
Используется в: [`_wp_connectors_get_connector_script_module_data`](https://chugunov.pro/api-wordpress/functions/_wp_connectors_get_connector_script_module_data/), [`activate_plugin`](https://chugunov.pro/api-wordpress/functions/activate_plugin/), [`validate_active_plugins`](https://chugunov.pro/api-wordpress/functions/validate_active_plugins/).

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