Automattic\WooCommerce\Admin\Features\OnboardingTasks

TaskLists::init_default_lists │ public static │ WC 1.0

Initialize default lists.

Method of the class: TaskLists{}

Returns

null. Nothing (null).

Usage

$result = TaskLists::init_default_lists();

TaskLists::init_default_lists() code WC 11.1.2

public static function init_default_lists() {
	$tasks = array(
		'StoreDetails',
		'Products',
		'Payments',
		'CustomizeStore',
		'Tax',
		'Shipping',
		'LaunchYourStore',
	);

	$key = array_search( 'StoreDetails', $tasks, true );
	if ( false !== $key ) {
		unset( $tasks[ $key ] );
	}

	self::add_list(
		array(
			'id'                      => 'setup',
			'title'                   => __( 'Get ready to start selling', 'woocommerce' ),
			'tasks'                   => $tasks,
			'display_progress_header' => true,
			'event_prefix'            => 'tasklist_',
			'options'                 => array(
				'use_completed_title' => true,
			),
			'visible'                 => true,
		)
	);

	self::add_list(
		array(
			'id'      => 'extended',
			'title'   => __( 'Things to do next', 'woocommerce' ),
			'sort_by' => array(
				array(
					'key'   => 'is_complete',
					'order' => 'asc',
				),
				array(
					'key'   => 'level',
					'order' => 'asc',
				),
			),
			'tasks'   => array(
				'Marketing',
				'ExtendStore',
				'AdditionalPayments',
				'GetMobileApp',
			),
		)
	);

	self::add_task(
		'extended',
		new ReviewShippingOptions(
			self::get_list( 'extended' )
		)
	);

	// Tasklist that will never be shown in homescreen,
	// used for having tasks that are accessed by other means.
	self::add_list(
		array(
			'id'           => 'secret_tasklist',
			'hidden_id'    => 'setup',
			'tasks'        => array(
				'ExperimentalShippingRecommendation',
			),
			'event_prefix' => 'secret_tasklist_',
			'visible'      => false,
		)
	);

	if ( has_filter( 'woocommerce_admin_experimental_onboarding_tasklists' ) ) {
		/**
		 * Filter to override default task lists.
		 *
		 * @since 7.4
		 * @param array     $lists Array of tasklists.
		 */
		self::$lists = apply_filters( 'woocommerce_admin_experimental_onboarding_tasklists', self::$lists );
	}
}