WC_CLI_COM_Command::connect()public staticWC 1.0

Connects to WooCommerce.com with application-password.

[--password]
If set, password won't be prompt.
[--force]
If set, site will be disconnected and a new connection will be forced.

EXAMPLES

# Connect to WCCOM using password.
$ wp wc com connect
# force connecting to WCCOM even if site is already connected.
$ wp wc com connect --force
# Pass password to command.
$ wp wc com connect --password=PASSWORD

Method of the class: WC_CLI_COM_Command{}

No Hooks.

Return

null. Nothing (null).

Usage

$result = WC_CLI_COM_Command::connect( $args, $assoc_args );
$args(array) (required)
Positional arguments to include when calling the command.
$assoc_args(array) (required)
Associative arguments to include when calling the command.

WC_CLI_COM_Command::connect() code WC 9.4.2

public static function connect( array $args, array $assoc_args ) {
	$password = \WP_CLI\Utils\get_flag_value( $assoc_args, 'password' );
	$force    = \WP_CLI\Utils\get_flag_value( $assoc_args, 'force', false );

	if ( WC_Helper::is_site_connected() ) {
		if ( $force ) {
			WC_Helper::disconnect();
		} else {
			WP_CLI::error( __( 'Your store is already connected.', 'woocommerce' ) );

			return;
		}
	}

	if ( empty( $password ) ) {
		// translators: %s is the URL for the application-password section in WooCommerce.com.
		WP_CLI::log( sprintf( __( 'If you don\'t have an application password (not your account password), generate a password from %s', 'woocommerce' ), esc_url( self::APPLICATION_PASSWORD_SECTION_URL ) ) );
		$password = self::ask( __( 'Connection password:', 'woocommerce' ) );
	}
	$password = sanitize_text_field( $password );
	if ( empty( $password ) ) {
		// translators: %s is the URL for the application-password section in WooCommerce.com.
		WP_CLI::error( sprintf( __( 'Invalid password. Generate a new one from %s.', 'woocommerce' ), esc_url( self::APPLICATION_PASSWORD_SECTION_URL ) ) );
	}

	$auth = WC_Helper::connect_with_password( $password );
	if ( is_wp_error( $auth ) ) {
		WP_CLI::error( $auth->get_error_message() );
	}

	if ( WC_Helper::is_site_connected() ) {
		WP_CLI::success( __( 'Store connected successfully.', 'woocommerce' ) );
	}
}