質問: get_current_blog_id(); foreach( $blog_ids as $blog_id ){ switch_to_blog( $blog_id ); //do stuff } switch_to_blog( $original_blog_id ); の代わりに: foreach( $blog_ids as $blog_id ){ switch_to_blog( $blog_id ); //do stuff restore_current_blog_id(); }
回答: @toschoの回答に感謝します。 wpのキューにあるこのリクエスト - 更新を見る ここ 。それがwpで修正されるまで、誰かが必然的に標準のrestore_current_blog()を使いたいのであれば、これが別の方法です(間違っている場合は修正してください):あなたの機能を作る、すなわち.function restore_original_blog_x(){ if(!empty(($globals['_wp_switched_stack'][0])){ $globals['blog_id']= $globals['_wp_switched_stack'][0]; $globals['_wp_switched_stack'] = array($globals['_wp_switched_stack'][0]); restore_current_blog(); } } 複数の切り替えが終わったら、一度だけ実行してください。 (詳細: wp-includes/ms-blogs.php )