Returns global variables to their previous state after switching to another site using switch_to_blog().
The function checks before execution whether a switch occurred; if not, it does nothing. This means that the function can be called even if no switch has taken place, it will not impact performance.
Important
The function must be called after each use of switch_to_blog(). If this is not done, the global variable: $GLOBALS['_wp_switched_stack'], which tracks the switch, will remain filled. WP will think you are in a switched state and may return the wrong URL for the site when using - wp_upload_dir(). This will happen even if switching to the current site - call switch_to_blog( ID ), where ID is the ID of the current blog.
When calling switch_to_blog() multiple times, call restore_current_blog() each time. Or save the blog ID and call switch_to_blog() with that ID at the end and clear the global variables:
true|false. true - on successful return and false - if already on the current site.
Usage
restore_current_blog();
Examples
0
#1 Returning to the current site of multisite (blog)
The example shows how to return to the current blog after switching to another blog and doing everything there:
// switch to blog 5
switch_to_blog( 5 );
// Output the data of the blog we switched to
// Getting posts from blog 5
$myposts = get_posts();
foreach( $myposts as $post ){
echo esc_html( $post->post_title ) .'<br>';
}
wp_reset_postdata();
// return to the current blog
restore_current_blog();