説明
restore_current_blog() は、switch_to_blog() で切り替えたあとに、1つ前のサイトへ戻す関数です。
基本構文
restore_current_blog(): bool
引数
引数はありません。
戻り値
戻せたときは true。切り替えの履歴がないときは false。
使い方(サンプル)
switch_to_blog( 2 );
// 別のサイトでの処理
restore_current_blog();
注意点
switch_to_blog()を呼んだ回数だけ、呼ぶ必要がある。- 切り替えの履歴がないときに呼ぶと、
falseを返す。
実務での使いどころ
switch_to_blog()で別のサイトを処理したあとに、必ず元に戻すとき。
よくあるミスと対処
switch_to_blog()を2回呼んだのに、1回しか戻していない。- 途中の
returnや例外で、戻す処理が飛ばされる。try・finallyを使う。
NG例
switch_to_blog( 2 );
if ( ! $ok ) {
return; // 元に戻していない
}
restore_current_blog();
OK例
switch_to_blog( 2 );
try {
// 別のサイトでの処理
} finally {
restore_current_blog();
}
使い分け早見表
| 関数 | 役割 |
|---|---|
switch_to_blog() |
別のサイトへ切り替える |
restore_current_blog() |
切り替え前のサイトへ戻す |
get_current_blog_id() |
現在のサイトのID |
関連項目
switch_to_blog()、get_current_blog_id()、is_multisite()
公式リファレンス:restore_current_blog() | WordPress Developer Resources

コメント