validate_active_plugins()WP 2.5.0

Validates active plugins.

Validate all active plugins, deactivates invalid and returns an array of deactivated ones.

Хуков нет.

Возвращает

WP_Error[]. Array of plugin errors keyed by plugin file name.

Использование

validate_active_plugins();

Список изменений

С версии 2.5.0 Введена.

Код validate_active_plugins() WP 6.5.2

function validate_active_plugins() {
	$plugins = get_option( 'active_plugins', array() );
	// Validate vartype: array.
	if ( ! is_array( $plugins ) ) {
		update_option( 'active_plugins', array() );
		$plugins = array();
	}

	if ( is_multisite() && current_user_can( 'manage_network_plugins' ) ) {
		$network_plugins = (array) get_site_option( 'active_sitewide_plugins', array() );
		$plugins         = array_merge( $plugins, array_keys( $network_plugins ) );
	}

	if ( empty( $plugins ) ) {
		return array();
	}

	$invalid = array();

	// Invalid plugins get deactivated.
	foreach ( $plugins as $plugin ) {
		$result = validate_plugin( $plugin );
		if ( is_wp_error( $result ) ) {
			$invalid[ $plugin ] = $result;
			deactivate_plugins( $plugin, true );
		}
	}
	return $invalid;
}