Automattic\WooCommerce\Admin\PluginsInstallLoggers

AsyncPluginsInstallLogger::track()privateWC 1.0

Method of the class: AsyncPluginsInstallLogger{}

No Hooks.

Return

null. Nothing (null).

Usage

// private - for code of main (parent) class only
$result = $this->track( $data );
$data (required)
-

AsyncPluginsInstallLogger::track() code WC 9.7.1

private function track( $data ) {
	$track_data = array(
		'success'              => true,
		'installed_extensions' => array_map(
			function ( $extension ) {
				return $this->get_plugin_track_key( $extension );
			},
			$data['installed']
		),
		'total_time'           => $this->get_timeframe( ( time() - $data['start_time'] ) * 1000 ),
	);

	foreach ( $data['installed'] as $plugin ) {
		if ( ! isset( $data['time'][ $plugin ] ) ) {
			continue;
		}

		$plugin_track_key                                  = $this->get_plugin_track_key( $plugin );
		$install_time                                      = $this->get_timeframe( $data['time'][ $plugin ] );
		$track_data[ 'install_time_' . $plugin_track_key ] = $install_time;

		wc_admin_record_tracks_event(
			'coreprofiler_store_extension_installed_and_activated',
			array(
				'success'      => true,
				'extension'    => $plugin_track_key,
				'install_time' => $install_time,
			)
		);
	}

	wc_admin_record_tracks_event( 'coreprofiler_store_extensions_installed_and_activated', $track_data );
}