Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
| Total | |
0.00% |
0 / 6 |
|
0.00% |
0 / 1 |
CRAP | n/a |
0 / 0 |
|
| logout_atomic_user_from_wpcom | |
0.00% |
0 / 5 |
|
0.00% |
0 / 1 |
20 | |||
| 1 | <?php |
| 2 | /** |
| 3 | * Logout customizations for WordPress.com. |
| 4 | * |
| 5 | * @package automattic/jetpack-mu-wpcom |
| 6 | */ |
| 7 | |
| 8 | use Automattic\Jetpack\Connection\Manager as Connection_Manager; |
| 9 | |
| 10 | /** |
| 11 | * Log out Atomic WordPress.com users from WPCOM when they logout from a local site. |
| 12 | */ |
| 13 | function logout_atomic_user_from_wpcom() { |
| 14 | $connection_manager = new Connection_Manager(); |
| 15 | $wpcom_user_data = $connection_manager->get_connected_user_data( get_current_user_id() ); |
| 16 | $has_wpcom_account = isset( $wpcom_user_data['ID'] ); |
| 17 | |
| 18 | if ( $has_wpcom_account && defined( 'IS_ATOMIC' ) && IS_ATOMIC ) { |
| 19 | // In some circustances get_current_user_id() returns the local user ID. |
| 20 | // The $wpcom_user_data['ID'] is always the WordPress.com user ID. |
| 21 | do_action( 'wp_masterbar_logout', $wpcom_user_data['ID'] ); |
| 22 | } |
| 23 | } |
| 24 | add_action( 'clear_auth_cookie', 'logout_atomic_user_from_wpcom' ); |