WordPress

WordPressのマルチサイトでサイトを判別するPHPコード

投稿日:2018年2月26日 更新日:

WordPress では マルチサイトといって 1つのWordPress内に複数のサイトを作成する機能があります。(詳しくは、ネットワークの作成 – WordPress Codex 日本語版 をご覧ください)

マルチサイトを使っている場合に、PHPのコードで「今どのサイトなのか?」を判別する書き方をご紹介します。

ブログIDの取得

まず、判別したいサイトの ブログID(blog id) を調べます。

管理ページ左上の [参加サイト] – [サイトネットワーク管理] – [サイト] をクリックします。

ブログIDを知りたいサイトをクリックします。

ここで URL に表示された「id=○」の部分で id としてセットされている番号が、そのサイトのブログIDになります。

PHPコードの書き方

get_current_blog_id() という関数を使います。この関数は、「現在のサイトのブログID」を返してくれます。

参考

例えば、現在表示しているのが「ブログ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()関数を使う

ということになります。

📂-WordPress
-

執筆者:labo


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

WordPress

WordPressの記事ページ上で、投稿ID/ページIDを取得するブックマークレット

WordPressの記事ページ上で、記事IDを取得するブックマークレットを作りました。

WordPress

【WordPress】Table of Contents Plus が生成した目次の直前に、ウィジェット(広告など)を表示するコードを自分で書く

Table of Contents Plus (TOC+) という WordPressプラグインが生成した目次の直前に、ウィジェット を表示する方法について説明します。 ※ 2018年6月6日: 目次 …

WordPress

WordPress プラグイン開発における多言語対応(gettextを利用する場合)

目次1. はじめに2. 想定している開発環境3. gettext のインストール4. 多言語対応の作業1. プログラム中の翻訳文字列を使用する箇所で、専用の関数を使うようにします。2. 翻訳ファイルを …

WordPress

JP Markdown と Classic Editor をやめ、Gutenberg を利用することにしました

JP Markdown と Classic Editor をやめ、Gutenberg を利用することにしました。かなり便利そうです。

WordPressサイトで現在表示しているページの編集ページを開くブックマークレットを作りました

目次概要編集ページへのURL作成したブックマークレットまとめ 概要 WordPressにログインした後、通常のページ(管理ページではなく)を表示すると、画面上部に管理ツールバーが表示されます。このツー …