validate_plugin( string $plugin )

Validate the plugin path.

Description

Checks that the main plugin file exists and is a valid plugin. See validate_file().

Parameters

$plugin

(string) (Required) Path to the plugin file relative to the plugins directory.

Return

(int|WP_Error) 0 on success, WP_Error on failure.

Source

File: wp-admin/includes/plugin.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;
}

Changelog

Version Description
2.5.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/validate_plugin