switch_to_blog

説明

bool switch_to_blog( int $new_blog [ , bool $deprecated = null ] )
ブログを切り替える。

パラメータ

  • $new_blog
    切り替えるブログIDを指定。
  • $deprecated
    非推奨(使用しないこと)。

返り値

常にtrueを返す。

注意

マルチサイトにおいて他サイトの情報を取得したり、更新したりする場合に使用する。基本的な使い方は、このswitch_to_blog関数を使ってブログを切り替え、そのブログに対して処理を行った後、 restore_current_blog関数を使用して元のブログに戻すという流れになる。

このswitch_to_blog関数では、ブログの切り替えを行う前に現在のブログIDをストックし、対で使用されるrestore_current_blog関数ではストックされているブログIDを取り出して元のブログを戻している。なおパラメータ$new_blogが空の場合は、現在のブログIDが適用される。$new_blogが現在のブログIDの場合でも切り替え処理は成功となる。

[5.4.0]'switch_blog'アクションはrestore_current_blog関数からも実行され、どちらから実行されたかを判別可能にするパラメータ$contextが追加された。$contextにはswitch_to_blog関数の場合は'switch'が、restore_current_blog関数の場合は'restore'が格納されている。


使用例

  • $blog_idのブログに切り替える。
    <?php
    switch_to_blog( $blog_id );
    
    // ここに切り替えたブログ向けの処理を記述
    
    restore_current_blog();
    ?>

フィルター

直接実行するフィルターはありません。

アクション

[MU]ブログを切り替えると、'switch_blog'アクションを実行する。パラメータ$new_blogは本関数が受け取ったブログIDが、$prev_blog_idには変更前のブログIDが格納されている($new_blogが現在のブログIDの場合でもこのアクションは実行する)。[5.4.0]パラメータ$contextには'switch'が格納されている。
do_action( 'switch_blog', $new_blog, $prev_blog_id, $context );

ソースファイル

/wp-includes/ms-blogs.php

最終更新 : 2020年04月07日 12:56



お勧め

6.2に追加されるsearch_columnsパラメータが便利(2023年3月30日 更新)

バージョン6.2では記事検索機能を備えたWP_Queryクラスにsearch_columnsパラメータが追加される。標準のキーワード検索では、タイトル(post_title)、本文(post_content)、抜粋(post_excerpt)が対象になっているが、search_columnsパラメータを使うと対象を絞り込めるようになる。

固定ページのURLの拡張子をhtmlに変更する(2013年3月9日 更新)

固定ページについて、URLを静的ページっぽく拡張子htmlに変更したいという要望を受けることがある。これまでは「.html on PAGES」というプラグインを使っていて特に不満があったわけではないのだが、今回ひょんなことから簡単に対応できることがわかったので、メモ書きしておく。

KUSANAGIでマルチサイト(サブドメイン)を試した(2019年8月6日 更新)

本サイトはサブディレクトリタイプのマルチサイト機能を採用して構築しているが、これまでサブドメインタイプは利用した経験はない。マルチサイト機能のサブドメインタイプは以前から1度は試してみたいと思っており、今回実際にサイトを構築してみた。

Fotepo:プラグイン作ってみました(2019年9月19日 更新)

仕事柄、Chromeの「デベロッパーツール」を使ってページのフォントを変更することがある。そんな時、無効なフォント名を指定してしまったり、フォント名をまちがえることがあり、もう少しお手軽にできないかと思って作ったのが今回紹介するプラグイン「Fotepo」である。

カテゴリー専用の投稿一覧と新規投稿メニューを追加する(2012年1月23日 更新)

サイト更新の1クリックを省くため、特定カテゴリーの投稿に対して同じようにメニューを追加してみた。カスタム投稿タイプの専用投稿メニューみたいな感じである。