Automattic\WooCommerce\Blueprint\Exporters

ExportInstallPluginSteps::exportpublicWC 1.0

Export the steps required to install plugins.

Метод класса: ExportInstallPluginSteps{}

Хуков нет.

Возвращает

Массив. The array of InstallPlugin steps.

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

$ExportInstallPluginSteps = new ExportInstallPluginSteps();
$ExportInstallPluginSteps->export();

Код ExportInstallPluginSteps::export() WC 10.0.2

public function export() {
	$plugins = $this->sort_plugins_by_dep( $this->wp_get_plugins() );

	if ( is_callable( $this->filter_callback ) ) {
		$plugins = call_user_func( $this->filter_callback, $plugins );
	}

	// @todo temporary fix for JN site -- it includes WooCommerce as a custom plugin
	// since JN sites are using a different slug.
	$exclude = array( 'WooCommerce Beta Tester' );
	$steps   = array();
	foreach ( $plugins as $path => $plugin ) {
		if ( in_array( $plugin['Name'], $exclude, true ) ) {
			continue;
		}

		$slug = dirname( $path );
		// single-file plugin.
		if ( '.' === $slug ) {
			$slug = pathinfo( $path )['filename'];
		}
		$info = $this->wp_plugins_api(
			'plugin_information',
			array(
				'slug'   => $slug,
				'fields' => array(
					'sections' => false,
				),
			)
		);

		$has_download_link = isset( $info->download_link );
		if ( false === $this->include_private_plugins && ! $has_download_link ) {
			continue;
		}

		$resource = $has_download_link ? 'wordpress.org/plugins' : 'self/plugins';
		$steps[]  = new InstallPlugin(
			$slug,
			$resource,
			array(
				'activate' => true,
			)
		);
	}

	return $steps;
}