WordPress では マルチサイトといって 1つのWordPress内に複数のサイトを作成する機能があります。(詳しくは、ネットワークの作成 – WordPress Codex 日本語版 をご覧ください)
マルチサイトを使っている場合に、PHPのコードで「今どのサイトなのか?」を判別する書き方をご紹介します。
ブログIDの取得
まず、判別したいサイトの ブログID(blog id) を調べます。
管理ページ左上の [参加サイト] – [サイトネットワーク管理] – [サイト] をクリックします。
ブログIDを知りたいサイトをクリックします。
ここで URL に表示された「id=○」の部分で id としてセットされている番号が、そのサイトのブログIDになります。
PHPコードの書き方
get_current_blog_id()
という関数を使います。この関数は、「現在のサイトのブログID」を返してくれます。
参考
- Function Reference/get current blog id « WordPress Codex
- 関数リファレンス/get current blog id – WordPress Codex 日本語版
例えば、現在表示しているのが「ブログID が 3」のサイトであるかどうかは、以下のPHPコードで判別することができます。
<?php
if ( get_current_blog_id() === 3 ) {
echo 'これは目的のブログです!';
}
実際には、プログラミングにおいて「判別式のところで直接番号を指定する」のは、あまりよくないですので、functions.php
内で定数として番号を定義して使うのがよいと思います。
functions.php
<?php
// ...
define( 'BLOG_ID_HOBBY', 3 );
// ...
任意のテンプレートファイル
<?php
// ...
if ( get_current_blog_id() === BLOG_ID_HOBBY ) {
echo 'これは目的のブログです!';
}
// ...
まとめ
一言でまとめてしまうと、
get_current_blog_id()
関数を使う
ということになります。