WP_Recovery_Mode_Email_Service::get_plugin( array $extension ): array|false

In this article

This function’s access is marked private. This means it is not intended for use by plugin or theme developers, only in other core functions. It is listed here for completeness.

Return the details for a single plugin based on the extension data from an error.

Parameters

$extensionarrayrequired
The extension that caused the error.
  • slug string
    The extension slug. The directory of the plugin or theme.
  • type string
    The extension type. Either 'plugin' or 'theme'.

Return

array|false A plugin array get_plugins() or false if no plugin was found.

Source

private function get_plugin( $extension ) {
	if ( ! function_exists( 'get_plugins' ) ) {
		require_once ABSPATH . 'wp-admin/includes/plugin.php';
	}

	$plugins = get_plugins();

	// Assume plugin main file name first since it is a common convention.
	if ( isset( $plugins[ "{$extension['slug']}/{$extension['slug']}.php" ] ) ) {
		return $plugins[ "{$extension['slug']}/{$extension['slug']}.php" ];
	} else {
		foreach ( $plugins as $file => $plugin_data ) {
			if ( str_starts_with( $file, "{$extension['slug']}/" ) || $file === $extension['slug'] ) {
				return $plugin_data;
			}
		}
	}

	return false;
}

Changelog

VersionDescription
5.3.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.