Warning: This method has been deprecated.

WC_Admin_Setup_Wizard::wc_setup_activate_save()

Activate step save.


Description Description

Install, activate, and launch connection flow for Jetpack.


Source Source

File: includes/admin/class-wc-admin-setup-wizard.php

	public function wc_setup_activate_save() {
		check_admin_referer( 'wc-setup' );

		set_transient( 'wc_setup_activated', 'yes', MINUTE_IN_SECONDS * 10 );

		// Leave a note for WooCommerce Services that Jetpack has been opted into.
		update_option( 'woocommerce_setup_jetpack_opted_in', true );

		if ( class_exists( 'Jetpack' ) && Jetpack::is_active() ) {
			wp_safe_redirect( esc_url_raw( $this->get_next_step_link() ) );
			exit;
		}

		WC_Install::background_installer( 'jetpack', array(
			'name'      => __( 'Jetpack', 'woocommerce' ),
			'repo-slug' => 'jetpack',
		) );

		// Did Jetpack get successfully installed?
		if ( ! class_exists( 'Jetpack' ) ) {
			wp_redirect( esc_url_raw( add_query_arg( 'activate_error', 'jetpack_cant_be_installed' ) ) );
			exit;
		}

		Jetpack::maybe_set_version_option();
		$jetpack = Jetpack::init();
		// Older versions of jetpack may not have this method.
		if ( method_exists( $jetpack, 'configure' ) ) {
			$jetpack->configure();
		}
		$register_result = Jetpack::try_registration();

		if ( is_wp_error( $register_result ) ) {
			$result_error_code = $register_result->get_error_code();
			$jetpack_error_code = array_key_exists( $result_error_code, $this->get_all_activate_errors() ) ? $result_error_code : 'register';
			wp_redirect( esc_url_raw( add_query_arg( 'activate_error', $jetpack_error_code ) ) );
			exit;
		}

		$redirect_url = esc_url_raw( add_query_arg( array(
			'page'           => 'wc-setup',
			'step'           => 'activate',
			'from'           => 'wpcom',
			'activate_error' => false,
		), admin_url() ) );
		$connection_url = Jetpack::init()->build_connect_url( true, $redirect_url, 'woocommerce-setup-wizard' );

		wp_redirect( esc_url_raw( $connection_url ) );
		exit;
	}

Top ↑

Changelog Changelog

Changelog
Version Description
4.6.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

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