is_main_site() の使い方|説明・引数・注意点

説明

is_main_site() は、現在のサイトが、ネットワークのメインサイトかどうかを判定する関数です。マルチサイトで使います。

基本構文

is_main_site( int $site_id = null, int $network_id = null ): bool

引数

  • $site_id:判定するサイトのID(省略すると、現在のサイト)
  • $network_id:ネットワークのID(省略すると、現在のネットワーク)

戻り値

メインサイトなら true、そうでなければ false。マルチサイトでない環境では、常に true。

使い方(サンプル)

if ( is_multisite() && ! is_main_site() ) {
	// サブサイトだけの処理
}

注意点

  • マルチサイトでない環境では、常に true を返す。
  • マルチサイトかどうかの判定は、is_multisite()。

実務での使いどころ

  • メインサイトだけで、処理を動かすとき。
  • サブサイトだけで、処理を変えるとき。

よくあるミスと対処

  • マルチサイトでない環境で、常に true になることを考えていない。
  • is_multisite() と混同している。is_multisite() は、マルチサイトかどうかの判定。

NG例

if ( is_main_site() ) {
	// マルチサイトのメインサイトのつもり(シングルサイトでも入る)
}

OK例

if ( is_multisite() && is_main_site() ) {
	// マルチサイトの、メインサイトだけ
}

使い分け早見表

関数 判定・取得するもの
is_multisite() マルチサイトか
is_main_site() メインサイトか
get_current_blog_id() 現在のサイトのID

関連項目

is_multisite()、get_current_blog_id()

公式リファレンス:is_main_site() | WordPress Developer Resources

コメント

タイトルとURLをコピーしました