Automattic\WooCommerce\Internal\Admin\Settings\PaymentsProviders
WooPayments::get_wpcom_connection_state
Get the current state of the store's WPCOM/Jetpack connection.
Method of the class: WooPayments{}
No Hooks.
Returns
Array. The store's WPCOM/Jetpack connection state.
Usage
// private - for code of main (parent) class only $result = $this->get_wpcom_connection_state(): array;
WooPayments::get_wpcom_connection_state() WooPayments::get wpcom connection state code WC 10.7.0
private function get_wpcom_connection_state(): array {
try {
$wpcom_connection_manager = $this->proxy->get_instance_of( WPCOM_Connection_Manager::class, 'woocommerce' );
} catch ( \Throwable $e ) {
// Log so we can investigate.
SafeGlobalFunctionProxy::wc_get_logger()->error(
'Failed to get the WPCOM/Jetpack Connection Manager instance: ' . $e->getMessage(),
array(
'source' => 'settings-payments',
)
);
// Assume no connection.
return array(
'wpcom_has_working_connection' => false,
'wpcom_is_store_connected' => false,
'wpcom_has_connected_owner' => false,
'wpcom_is_connection_owner' => false,
);
}
$is_connected = $wpcom_connection_manager->is_connected();
$has_connected_owner = $wpcom_connection_manager->has_connected_owner();
return array(
'wpcom_has_working_connection' => $is_connected && $has_connected_owner,
'wpcom_is_store_connected' => $is_connected,
'wpcom_has_connected_owner' => $has_connected_owner,
'wpcom_is_connection_owner' => $has_connected_owner && $wpcom_connection_manager->is_connection_owner(),
);
}