WordPressをしばらく使用していると、複数のサイトを運営しているという方も少なくないはずです。それらのサイトに共通する要素が多い場合、それぞれを個別に管理するよりも効率的な方法があります。

それが、WordPressのマルチサイト機能です。マルチサイトを作成すると、1つのWordPress環境内にサイトネットワークを構築し、そのネットワーク上で必要な数だけサイトを運営、一元管理することができます。マルチサイトの代表例は、数百万ものサイトを運営するWordPress.comです。

この記事では、WordPressマルチサイトの導入方法から、その機能を最大限活用するためのポイントまで、必要な情報をわかりやすく解説します。

WordPressマルチサイトは扱う内容が幅広く、多くの機能や設定が存在しますが、基本を理解すれば決して難しいものではありません。この記事を最後まで読めば、WordPressでマルチサイトを運用するために必要な知識を身につけることができます。

まずは、WordPressマルチサイトとは何かをご説明します。

WordPressマルチサイトとは?

WordPressマルチサイトとは、冒頭で述べたとおり、1つのWordPress環境で複数のサイトを運営できるようにする機能です。既存のWordPressサイトにも、新たに構築したWordPressサイトにも導入できます。

マルチサイトを有効化するには、WordPressファイル内のいくつかのファイルに数行のコードを追加します(手順は後ほど)。有効化後、同じネットワーク内に新規サイトを作成できるようになります。

既存のサイトはURLを変更することなくそのまま利用でき、新たに作成したサイトがその上に追加されていきます。これにより、複数のサイトを単一のWordPress環境から効率的に管理できるようになります。

通常のWordPressサイトとの違い

通常のWordPressサイトとマルチサイトは、以下の点が異なります。

  • 個々のサイトの数
  • WordPressユーザーの役割:マルチサイトを有効にすると、特権管理者という役割が追加される
  • テーマとプラグインへのアクセス:ネットワーク管理者のみがインストール可能
  • 管理画面:マルチサイトには、ネットワークを管理するための画面がいくつか追加される
  • メディアの保存方法:マルチサイトでは、各サイトへのアップロード用に個別のフォルダーが追加される
  • データの保存方法:マルチサイトではサイトごとに個別のデータベーステーブルが作成されるものの、一部のデータ(ユーザーなど)はネットワーク全体でまとめて保存される

WordPressマルチサイトのユーザー権限:管理者ユーザーから特権管理者まで

WordPressマルチサイトを導入すると、自分は特権管理者となり、ネットワーク内で作成されたすべてのサイトに対する管理者権限を持つようになります。また、他のユーザーがネットワーク内で独自のサイトを作成できるように設定し、そのサイトのサイト管理者に任命することも可能です。

サイト管理者が持つ権限は、特権管理者よりも限定されています。例えば、特権管理者はテーマやプラグインをインストールできますが、サイト管理者はそれらを自身のサイトで有効化できるだけで、新たにインストールすることはできません。この仕組みにより、サイト管理者がネットワーク全体の安全性を損なう可能性のあるコードを追加することを防ぎ、セキュリティを維持しやすくなります。

また、サイト管理者はユーザーを追加できますが、そのユーザーがアクセスできるのは追加された特定のサイトのみになります。ネットワーク内のすべてのサイトにアクセスできるわけではありません。

ユーザー情報はネットワーク全体で一元管理されるため、すでに登録されているユーザーに対して別のサイトへのアクセス権を付与する場合でも、新たにアカウントを作成する必要はありません。

なお、WordPressマルチサイトがユーザーデータやその他のデータをどのように保存・管理しているのかについては、後半で詳しく解説します。

WordPressマルチサイトとドメイン名

標準のWordPressサイトとマルチサイトのもうひとつの大きな違いは、ドメイン構成です。

マルチサイトのURLは、マルチサイトを構築した元のサイトと同じになります。例えば、サイトのURLがmysite.comの場合、マルチサイトネットワークも同じmysite.comを基盤として動作します。

マルチサイトを有効化する際には、新規サイトのURL構造として、サブドメイン(site1.mysite.com)を使用するか、サブディレクトリ(mysite.com/site1)を使用するかを選択できます。また、マルチサイト内の各サイトに独自ドメインを割り当てるドメインマッピングも可能です。これにより、各サイトは独立したドメイン上で運営されているかのように見えます。サイトの利用者からは、そのサイトが単独のWordPress環境で運営されているように感じられます。

世界最大級のWordPressマルチサイトの例として挙げられるのが、WordPress.com。WordPress.comは、個人ブロガーから大企業まで、数百万ものサイトをホストしています。その運用には独自にカスタマイズされた複雑なデータ管理の仕組みが使われていますが、その詳細を理解する必要はありません。

一方で、マルチサイトはWordPress.comのような大規模サービスだけのための機能ではなく、さまざまな組織や企業が、より身近な用途でマルチサイトを活用しています。具体的な活用事例についても後ほどご紹介します。

WordPress.comの新規登録ページ
WordPress.comの新規登録ページ

ここまで読むと、「管理が複雑になるだけで、複数のWordPressサイトを個別に運営したほうが簡単なのでは?」と思うかもしれません。しかし、マルチサイトには多くのメリットがあります。場合によっては、複数のWordPress環境を個別に管理するよりも、はるかに効率的な運用が可能になります。続いては、WordPressマルチサイトを利用する主なメリットについて詳しく見ていきます。

WordPressマルチサイトの強み

マルチサイトは、複数のWordPressサイトを運営している場合に特に効果を発揮する機能です。サイト管理の効率化や運用負荷の軽減につながり、管理作業にかかる時間を大幅に削減できます。

次のようなケースに当てはまる場合は、マルチサイトの導入を検討する価値があります。

  • 新規サイトを立ち上げるたびに、パフォーマンス、セキュリティ、SEO関連の同じプラグインをインストールしている
  • 複数のサイトでフレームワークテーマを親テーマとして利用している
  • ブランドやサイト構造など共通要素を持つ組織の各支部・部門向けに複数サイトを構築している
  • サイトの開発や運営に時間を使いたいのに、複数サイトの更新作業に多くの時間を取られている

これらのメリットを詳しく見てみましょう。

コード管理を効率化できる

1つのWordPress環境で複数のサイトを運営することで、管理するコードの量を削減できます。サイトがいくつあっても、WordPressコアファイルは1セットのみで、テーマやプラグインもそれぞれ1つずつインストールすればOKです。

そのため、各サイトごとに個別のWordPress環境を用意する場合と比べて、サーバーの使用容量を抑えることができます。サイト数が増えるほど、このメリットは大きくなります。また、管理・更新が必要なコードも少なくなるため、サーバー費用の削減やメンテナンス作業の効率化にもつながります。

開発効率が高まる

カスタムテーマを使ってサイトを開発している場合、開発の出発点となるベーステーマを用意していることがあります。フレームワークテーマやシンプルな親テーマ、あるいはスターターテーマかもしれません(WordPressテーマをカスタマイズする方法はこちら)。

マルチサイト環境では、そのWordPressテーマを一度インストールするだけで済みます。そして、マルチサイト内の各サイトで有効化するテーマの親テーマとして利用できるため、開発作業の効率化につながります。

例えば、共通して使用するフレームワークテーマを運用している場合、通常は新規サイトを構築するたびにそのテーマをインストールし、さらにサイトごとの子テーマを作成して有効化する必要があります。一方、マルチサイト環境では、フレームワークテーマをマルチサイトに一度だけインストールすれば済み、各サイトには専用の子テーマを適用できます。

この仕組みは、複数のサイトで共通のデザイン要素を使用する場合に特に効果を発揮します。例えば、同じ企業の複数の事業部門向けサイトを構築する場合、共通のデザインやレイアウトを含む親テーマを作成し、各サイト向けに個別の子テーマを開発して適用できます。

これにより、親テーマを複数インストールして管理・更新する手間を省けるだけでなく、マルチサイト内の他サイトのコンテンツを各サイトに表示することも可能になります。その結果、単なるサイトの寄せ集めではなく、相互に連携したサイトネットワークを構築できます。

管理を効率化できる

WordPressマルチサイトの更新作業は、複数のWordPress環境を個別に管理する場合と比べて、はるかに効率的です。

テーマやプラグインは、マルチサイト内で何サイトに適用されているかに関係なく、一度更新するだけで済みます。そのため、サイト数が増えるほど管理負担の軽減効果は大きくなります。

ただし、テーマやプラグインを複数のサイトで利用している場合は、更新前の十分なテストが重要です。更新内容によっては、サイトごとに異なる影響が生じる可能性があるため、関連するすべてのサイトで動作確認を行うことをおすすめします。

Kinstaをご利用の場合は、ステージング環境で更新内容を事前にテストできます。ステージング環境上のマルチサイトで問題なく動作することを確認してから、本番環境へ反映することで、より安全に更新作業を進められます。

WordPressマルチサイトの効果的な使用例

WordPressマルチサイトにはさまざまな活用方法があります。ここでは、具体的な利用例を見ていきましょう。

個人サイトの運営

複数の個人サイトを運営している場合、それらを1つのマルチサイト環境に統合することで、管理の手間を大幅に削減できます。特に、以下のようなケースではメリットを実感しやすいです。

  • 親テーマや複数のプラグインなど、サイト間で共通のコードを使用している
  • サーバー容量を削減し、更新作業を効率化したい
  • ネットワーク内の別サイトのコンテンツやデータを相互に表示したい

また、ドメインマッピングを利用すれば、各サイトに独自ドメインを割り当てることも可能です。そのため、利用者から見るとそれぞれが独立したサイトとして運営されているように見えます。

クライアントサイトのホスティング

複数のクライアントサイトを運営する場合も、WordPressマルチサイトは管理効率の向上に役立ちます。

例えば、すべてのクライアントサイトで同じプラグイン群や共通の親テーマを使用している場合、それらを1つのマルチサイトで一元管理できます。テーマやプラグインの更新作業もマルチサイト単位で行えるため、管理の手間が大幅に削減されます。

また、保守やセキュリティ対策バックアップの対象となるWordPressインストール環境も1つだけになるため、運用負荷の軽減にもつながります。

さらに、ドメインマッピングを利用すれば、クライアント独自のドメインを各サイトに割り当てることができます。この設定は公開サイトだけでなく管理画面にも適用されるため、クライアントは通常のWordPressサイトを利用しているのと変わらない感覚でサイトを管理できます。

企業サイトの運営

企業内の複数部門やブランド向けにサイトを運営している場合も、WordPressマルチサイトは有効な選択肢です。

マルチサイトを利用すれば、更新対象となるWordPress環境は1つだけで済みます。また、サイト間でユーザーやデータを共有できるほか、共通の親テーマやプラグインをマルチサイト全体で利用できます。

その結果、サイトの開発段階だけでなく、公開後の運用・管理にかかる時間も削減できます。

実際に、BBCアメリカではマルチサイトを活用して複数のサイトを運営しています。各テレビ番組に専用サイトを設けながら、それらを単一のネットワーク上で管理しています。

BBCアメリカのウェブサイト
BBCアメリカのウェブサイト

社内イントラネット

公開サイトの運営にはWordPressマルチサイトが適していない場合でも、社内イントラネットには有効な選択肢となることがあります。特に、1つの大規模なWordPressサイトや複数の独立したサイトを運用するよりも、効率的に管理できるケースがあります。

企業のイントラネットにWordPressマルチサイトを導入すると、次のようなメリットがあります。

  • 部門ごとに個別のサイトを作成し、従業員に必要なサイトへのアクセス権のみを付与できる
  • 従業員ごとにユーザーアカウントを一度作成するだけで、必要なサイトへのアクセス権を管理できる
  • サイト間でコンテンツを共有できるため、例えば中央の情報共有サイトからの更新情報を各部門サイトのトップページに表示するといった運用が可能になる

特にユーザー管理の効率化は大きなメリットです。アカウント管理をマルチサイト全体で一元化できるため、複数の独立したサイトを運用する場合と比べて、管理負担を大幅に軽減できます。

コミュニティサイトネットワーク

地域コミュニティや各種団体にとって、オンライン上で情報を発信する場を持つことは重要ですが、複数のサイトを個別に運営するにはコストがかかります。WordPressマルチサイトを利用して複数の団体のサイトを1つのネットワークで運営すれば、コストを抑えながら、団体同士の交流や連携を促進できます。

また、ユーザー同士が互いのブログをフォローしたり、管理画面上でコミュニケーションを取ったりできるプラグインを導入することも可能です。さらに、サイト間でコンテンツを共有できるため、ネットワーク全体で情報発信を強化できます。

加えて、必要となるWordPress環境は1つだけなので、サーバー費用の削減にもつながります。

実際に、マルチサイトは慈善団体や非営利団体、教育機関などでも活用されています。その一例がブリティッシュコロンビア大学で、教職員や学生向けのブログネットワークの運営にマルチサイトを利用しています。

UBCブログ
UBCブログ

収益化

マルチサイトは、WordPressを収益化するための優れた手段でもあります。WordPress.comはその代表例で、ネットワーク内でサイトを提供することで収益を上げています。同様の例として、教育機関向けのサイトやブログをホストするedublogsなどもあります。

edublogs
edublogs

マルチサイトを利用すれば、ベースサイト(マルチサイトを有効化した元のサイト)上に、ユーザーが自身のサイトを作成できるページを設置できます。このサービスは無料でも、有料でも提供することが可能です。また、ブログ運営者向けに、無料プランからプレミアムプランまで、複数の料金プランを用意することもできます。

さらに、ネットワーク管理画面を利用してブログ運営者をサポートしたり、お知らせや更新情報を配信したりすることも可能です。こうした機能を活用することで、ユーザーコミュニティを形成・運営できます。

続いては、WordPressでマルチサイト機能を有効化する方法を見ていきましょう。

WordPressマルチサイトをセットアップ、有効化する方法

WordPressマルチサイトを設定する方法は、大きく分けて2つあります。新規に構築したWordPressサイトで有効化する方法と、既存のWordPressサイトに追加する方法です。どちらの方法も問題なく利用できますが、設定手順にはいくつか違いがあります。

まずは、新規に構築したWordPressサイトでWordPressマルチサイトを有効化する方法からご紹介します。

Kinstaの自動インストーラーでWordPressマルチサイトを有効化する

ご利用のサーバーが提供する自動インストーラーを利用してWordPressをインストールする場合、インストール時にWordPressマルチサイトを有効化できることがあります。

例えば、Kinstaをご利用の場合は、MyKinstaでWordPressをインストールする際にマルチサイトを有効化できます。「WordPressをマルチサイト化する」 にチェックを入れると、新規サイトでマルチサイト機能が有効になります。また、この時点でサブドメインとサブディレクトリのどちらを使用するかも選択できます。この違いについては後ほど詳しく見ていきます。

MyKinstaでWordPressをマルチサイト化する
MyKinstaでWordPressをマルチサイト化する

マルチサイトを手動で有効化する

手動で設定するには、WordPressインストール環境のファイルにアクセスする必要があります。SFTPとコードエディターを使用してファイルを編集してください。

編集するファイルは、WordPressインストールディレクトリのルートにある.htaccessとwp-config.phpの2つです。作業を始める前に、必ずこれらのファイルのバックアップを作成してください。また、サイト全体のバックアップも取得しておくことをおすすめします。

まずは、コードエディターでwp-config.phpファイルを開きます(無料のお勧めHTMLエディター10選をご覧ください)。ファイルの中にある、次の行を見つけてください。

/* That's all, stop editing! Happy blogging. */

そのすぐ上に、次のコードを貼り付けます。

define( 'WP_ALLOW_MULTISITE', true );

ファイルを保存したら、ブラウザでWordPress管理画面にアクセスします。マルチサイト機能の有効化によって追加された 「ネットワーク設定」 画面を開いてください(「ツール」>「ネットワーク設定」)。

ここでは、ネットワークをサブドメインまたはサブディレクトリのどちらで構成するかを選択する画面が表示されます。

選択肢が表示される場合は、使用したい構成を選択してください(違いについては後述します)。続いて、ネットワークのタイトルと管理者メールアドレスを入力し、「インストール」 をクリックします。

すると、「ネットワーク設定」 画面が表示されます。この画面にはコードが表示されるので、それをwp-config.phpファイルと.htaccessファイルの2つにコピー&ペーストしてください。

「ネットワーク設定」画面
「ネットワーク設定」画面

2つのファイルを開き、この画面に表示されたコードを貼り付けます。その際、置き換えるよう指示されているコードがあれば、必ず上書きしてください。

)実際に表示されるコードは、上記のスクリーンショットのコードとは異なります。これは、サイトごとに設定内容が異なるためです。

2つのファイルを保存して閉じたら、WordPress管理画面に戻ります。ネットワーク設定画面に表示されているリンクをクリックして、ネットワークにログインしてください。ログインには、これまで使用していたものと同じ認証情報を使用します。

ログイン後は、管理画面が少し変化していることに気づくはずです。画面上部のツールバーに 「参加サイト」「サイトネットワーク管理」 という新しい項目が追加されています。

「参加サイト」 にマウスポインターを合わせると、ネットワーク管理画面へ移動するためのメニューが表示されます。「ダッシュボード」 をクリックして、ネットワークダッシュボードを開きます。

ネットワークダッシュボード
ネットワークダッシュボード

これは通常のWordPressサイトのダッシュボードとよく似ていますが、マルチサイト自体にはコンテンツがないため、ブログ投稿やクイック編集など、コンテンツに関連する項目は表示されません。コンテンツはすべて、ネットワーク内の個別サイトに紐づいています。

左側の管理メニューも通常とは異なります。「サイト」 という新しい項目が追加され、ここからサイトの作成や管理を行えるようになります。また、その他のメニューにも若干の違いがあります。少し時間を取って、各メニューを確認してみてください。この記事の後半では、これらの画面を使ってマルチサイトを管理する方法について詳しく見ていきます。

既存のWordPressサイトでWordPressマルチサイトを有効化する

既存のWordPressサイトでマルチサイトを有効化する場合も、基本的な手順は前述の手動設定と同じです。ただし、大きな違いとして、サイトの運用開始から1か月以上経過している場合は、サブディレクトリ構成を使用できません。

その理由は、既存コンテンツのURLと、新たに作成するネットワークサイトのURLが競合する可能性があるためです。サイト内のコンテンツが増えるほど、このリスクは高くなります。

例えば、「青空建材」という企業サイトを運営しており、その事業部門のひとつとして「青空リフォーム」があるとします。この場合、すでに「aozora-kenzai.jp/aozora-reform」というページを作成しているかもしれません。その後、新規マルチサイト内に「青空リフォーム」用のサイトを作成した場合、サブディレクトリ構成では同じ「aozora-kenzai.jp/aozora-reform」というURLになってしまう可能性があります。すると、WordPressはそのURLにアクセスしたユーザーに対して、既存のページを表示すべきか、新規サイトを表示すべきか判断できません。そのため、このようなケースではサブドメイン構成が使用され、新規サイトのURLは「aozora-reform.aozora-kenzai.jp」のようになります。

WordPressマルチサイト:サブドメインとサブディレクトリ

サブドメインとサブディレクトリについてはすでに触れましたが、新規のWordPressインストール環境でマルチサイトを有効化する場合は、どちらを使用するか選択できます。それぞれの違いは次のとおりです。

  • サブドメインを使用する場合:各サイトのURLは「https://site1.yournetwork.com」のようになる。この方式は、他のユーザーがマルチサイト内で独自のサイトを作成できるようにしたい場合に適している。
  • サブディレクトリを使用する場合:各サイトのURLは「https://yournetwork.com/site1」のようになる。ただし、元のサイトの運用開始から1か月以上経過している場合は、この方式を選択できず、サブドメインを使用する必要あり。

もちろん、ドメインマッピングを使用して、マルチサイト内の各サイトに独自ドメインを割り当てることもできます。この場合、利用者がサブドメインやサブディレクトリのURLを見ることはないため、どちらを選択しても実質的な違いはありません。

WordPressマルチサイトのCookieエラーを解消する方法

WordPressマルチサイト環境では、ログイン時にCookie関連のエラーが発生することがあります。

Cookieがブロックされているか、ブラウザでサポートされていない可能性があります。WordPressを使用するには、Cookieを有効化してください

このエラーは、特に独自ドメインのマッピング(ドメインマッピング)を使用しているマルチサイト構成でよく発生します。解決するには、以下のコードをwp-config.phpファイルに追加してください。

define('ADMIN_COOKIE_PATH', '/'); 
define('COOKIEPATH', ''); 
define('SITECOOKIEPATH', ''); 
define('COOKIE_DOMAIN', false);

WordPressマルチサイトでサイトを管理する方法

ネットワークの設定が完了したら、次はサイトを追加していきます。サイトを追加する方法は、管理画面から行う方法と、メインサイトのフロントエンドから行う方法の2つがあります。まずは、管理画面から追加する方法を見ていきます。

WordPress管理画面からサイトを追加する

ネットワーク管理ダッシュボードで、左側のメニューにある 「サイト」 をクリックします。

ここには、ネットワーク内のサイト一覧が表示されます。すでにサイトを追加している場合は一覧が表示されますが、設定直後は空の状態になっています。

新しいサイトを作成するには、「新規追加」 ボタンをクリックして、「新規サイトを追加」 画面を開きます。

「サイトを追加」画面
「サイトを追加」画面

新規サイトの情報を入力し、「サイトを追加」をクリックします。サイト一覧画面に戻ると、新規作成したサイトが表示されます。サイト名にマウスポインターを合わせると、次のリンクが表示されます。

  • 編集 – サイトの設定を編集(コンテンツは編集できません)。
  • ダッシュボード – サイトのダッシュボードを開きます。ここから投稿や固定ページの作成、各種設定を行える。
  • 停止 – サイトを停止し、誰もアクセスできないようにする。
  • アーカイブ – サイト管理者や訪問者からアクセスできない状態にするが、削除はしない。
  • スパム – サイトをスパムとしてマーク。この設定を行うと、そのサイトを作成したユーザーはサイトを作成できなくなる。
  • 削除 – サイトと関連データをすべて削除。
  • 表示 – サイトのフロントエンド(公開画面)を表示。

この段階で最も便利なのは 「編集」 オプションです。クリックすると、サイトの設定画面が表示されます。

以下は、ネットワーク内の既存サイトの設定画面の例です。

マルチサイトの「サイトを編集」画面
マルチサイトの「サイトを編集」画面

ここでは、サイトのドメイン名やサイトタイトルなどの基本設定を変更できます。また、「テーマ」 画面にアクセスして、そのサイトで利用できるテーマを指定することも可能です。

自社サイトやクライアントサイトをホストしている場合は、通常、各サイトで利用できるテーマを1つだけに制限することが多いでしょう。一方で、ユーザーが自由にサイトを作成できるネットワークを運営している場合は、複数のテーマをマルチサイト全体で有効化しておくことが一般的です。この設定は、ネットワーク管理画面の 「テーマ」 画面から行えます。

テーマやプラグインの管理方法については、通常のWordPressサイトとは異なる点があるため、後ほど詳しく解説します。

フロントエンドからサイトを作成する

ユーザーが自分でサイトを作成できるようにしている場合は、メインサイトの/wp-signup.php 画面からサイトを作成できます。

この画面では、既存のユーザーアカウントでログインしてサイトを作成することも、ユーザーアカウントとサイトを同時に作成することも可能です。

wp-signupの画面
wp-signupの画面

管理画面から自分でサイトを作成したいだけの場合は、サインアップを無効にできます。「サイトネットワーク管理」>「ネットワークの設定」に移動し「新規登録を許可しない」を選択します。

管理画面からサイトを作成すると、そのサイトの管理者権限が付与され「参加サイトドロップダウンに表示されます。他の誰かがサイトを作成した場合、あなたにはサイト管理者権限は付与されず、前述のリストにも表示されません(ただし「サイト」画面を使用して、自分をいつでもサイト管理者としてサイトに追加できます)。

WordPressマルチサイトとドメインマッピング

ドメインマッピングは、マルチサイトにおける私のお気に入りの機能の1つです。これにより、ドメインをネットワーク内のサイトにマッピングし、そのドメインでホストされているかのように動作させることができます。

補足)WordPressバージョン4.5までは、これを行うのにプラグインが必要でしたが、今はプラグインは不要です。

ドメインをサイトに割り当てるには、まずそのドメインがマルチサイトネットワークを指すように設定する必要があります。MyKinstaでドメインを追加し、対象サイトを向くように設定してください。

ドメインがネットワークを正しく参照するようになったら、次にサイトの設定へドメイン名を追加します。ネットワーク管理画面で 「サイト」 に移動し、ドメインを割り当てたいサイトの 「編集」 をクリックします。その後、サイト編集画面でドメイン名を入力してください。

マルチサイトの「サイトを編集」画面
マルチサイトの「サイトを編集」画面

変更を保存」をクリックすると、そのサイトで(マルチサイトのサブドメインやサブディレクトリではなく)新しいドメインが使用されるようになります。

WordPressマルチサイトでサイトを複製する

マルチサイト内で新規サイトを作成する際、既存サイトを複製した方が作業効率が向上する場合があります。そのためには、MultiSite Clone DuplicatorNS Cloner – Site Copierなどのプラグインをインストールし、ネットワーク全体で有効化してください。

これらのプラグインを有効化すると、サイト設定画面でサイト名にマウスポインターを合わせた際に、「Clone」や 「Duplicate」などの複製オプションが表示されます。このリンクをクリックすると、サイトの複製を作成できます。

WordPressマルチサイトでサイトを停止または削除する

もう使用していない個人サイトや、サーバー契約を終了したクライアントサイトなど、マルチサイト内のサイトを運用停止したい場合もあります。

サイトをマルチサイトから除外する方法はいくつかあります。いずれも 「サイト」 画面で対象サイトを探し、サイト名の下に表示される該当リンクから実行できます。

  • 停止:サイトを無効化し、誰もアクセスできないようにする。ファイルやデータは削除されず、サイト管理画面には引き続きアクセスできる。
  • アーカイブ:サイトを訪問者およびサイト管理者からアクセスできない状態にする。削除はされない。
  • スパム:サイトをスパムとしてマークする。サイトは削除され、そのサイトを作成したユーザーはサイトを作成できなくなる。
  • 削除:サイトと関連するすべてのデータを完全に削除。

WordPressマルチサイトでのユーザー権限

WordPressマルチサイトにおけるユーザー管理は、基本的には通常のWordPress環境とよく似ています。ただし、いくつか異なる点があります。

マルチサイトでは、サイト管理者と特権管理者の両方がユーザーを作成・管理できます。ただし、サイト管理者が行えるのは、自身が管理するサイトにおけるユーザー権限の管理のみです。サイト管理者はユーザーのサイトへのアクセス権を削除できますが、そのユーザー自体をマルチサイトから削除することはできません。

特権管理者としてユーザーを追加する

特権管理者としてユーザーを追加するには、ネットワーク管理画面で 「ユーザー」>「新規追加」 に移動します。

「新規ユーザーを追加」画面
「新規ユーザーを追加」画面

ここでは、ユーザー名とメールアドレスを入力します。追加されたユーザーにはメールが送信され、そこからパスワードを設定してログインできます。

ユーザーを追加した後は、通常のWordPressインストール環境と同様に、「ユーザー」 画面からユーザー情報を編集できます。また、WordPressマルチサイトには 「特権管理者」 という特別な権限があり、必要に応じてユーザーへ付与することも可能です。

マルチサイトの特権管理者権限
マルチサイトの特権管理者権限

ユーザーをサイト管理者として追加する

サイト管理者も、自身が管理するサイトにユーザーを追加できます。追加するユーザーは、すでにマルチサイト内に存在するユーザーでも、新規ユーザーでも構いません。そのためには、サイト管理画面で 「ユーザー」>「新規追加」 に移動します。

ユーザーをサイト管理者として追加する
ユーザーをサイト管理者として追加する

既存ユーザーを追加する場合は、そのユーザーのメールアドレスまたはユーザー名と、サイト内で付与する権限を入力するだけでOKです。マルチサイトに存在しない新規ユーザーを追加する場合は、一意のユーザー名とメールアドレスが必要になります。

また、確認メールの送信を省略した場合は、後からユーザー管理画面でパスワードを設定する必要があります。そのため、通常はWordPressの確認メール機能を利用して、ユーザー自身にパスワードを設定してもらう方が簡単です。

ユーザー権限の設定と管理(サイト管理者と特権管理者)

サイト管理者と特権管理者は、どちらもユーザーの追加や権限・ユーザー情報の管理を行えます。ただし、特権管理者の方がより広範な権限を持っています。

特権管理者は、「ユーザー」 画面からユーザーを管理します。ここでは、各ユーザーがどのサイトにアクセス権を持っているかを確認できるほか、ユーザー編集画面にもアクセスできます。

ユーザーのサイト内権限を変更したり、サイトから削除したり、別のサイトへ追加したりする場合は、サイトの編集画面を使用します。「サイト」 画面で対象サイトの 「編集」 をクリックし、「ユーザー」 タブを選択してください。

この画面から、サイト内でのユーザー権限の変更、ユーザーの削除、新規ユーザーの追加を行えます。

サイト管理者は、自身が管理するサイトのユーザー情報を編集したり、ユーザーを削除したりできます。「ユーザー」 画面で対象ユーザーをクリックすると、ユーザー編集画面が表示されます。ここでは、通常のWordPress環境と同様に、ユーザー情報の編集や権限の変更を行えます。

ユーザーの削除(サイト管理者と特権管理者)

特権管理者は、ユーザーを個別のサイトから削除することも、ネットワーク全体から削除することもできます。一方、サイト管理者が削除できるのは、自身が管理するサイトからのみです。

特権管理者の場合は、「ユーザー」 画面で対象ユーザーのチェックボックスを選択し、ユーザー一覧の上部にある 「一括操作」 ドロップダウンを使用します。ここから、ユーザーを削除したり、スパムとしてマークしたりできます。スパムとしてマークされたユーザーは、その後マルチサイトに再登録できなくなります。

サイト管理者の場合は、「ユーザー」 画面で対象ユーザーのチェックボックスを選択し、「一括操作」 ドロップダウンから 「削除」 を選択することで、そのユーザーをサイトから削除できます。

ユーザーとセキュリティ

ネットワーク上でユーザーがアカウントを作成し、さらに自身のサイトを作成できるようにしている場合は、セキュリティ面が気になるかもしれません。

マルチサイトでは、必要なアクセスレベルに応じてネットワーク設定を調整できるほか、特定のメールドメインをブロックすることでセキュリティを強化することも可能です。

特権管理者画面で 「設定」>「ネットワーク設定」 に移動してください。ここにある 「登録設定」 セクションには、セキュリティの強化やアクセス制限に利用できる設定項目が用意されています。

登録設定
登録設定
  • 新規登録の許可:新規ユーザー登録を許可するかどうか、および新規サイトの作成を初回登録ユーザーにも許可するか、既存のログイン済みユーザーのみに制限するかを設定。また、サイト登録を無効化し、特権管理者のみがサイトを作成できるようにすることもできる。
  • 登録通知:ユーザーアカウントやサイトが登録された際の通知。新規サイトやアカウントの作成状況を把握しやすくなるため、この通知は有効のままにしておくのがおすすめ。また、新規ユーザーと連絡を取るきっかけにもなる。
  • 新規ユーザーの追加:このチェックボックスをオフにすると、サイト管理者による新規ユーザーの作成を禁止できる。その場合、サイト管理者はネットワーク内にすでに存在するユーザーを自身のサイトへ追加することしかできない。
  • 禁止名:ユーザー名に使用されたくない単語を指定できる。
  • 登録メールアドレスの制限:新規ユーザー登録に使用できるメールドメインを指定。イントラネットや企業・教育機関向けネットワークで特に役立つ。
  • 登録を拒否するメールのドメイン:スパムや悪意のあるアカウント作成を防ぐため、特定のメールドメインからの登録を禁止できる。

WordPressマルチサイトでプラグインとテーマを操作する

WordPressマルチサイトの大きなメリットのひとつは、プラグインやテーマを1回だけインストールすればよいことです。そのため、使用するストレージ容量を削減できるだけでなく、更新作業にかかる時間も短縮できます。以下、マルチサイトにおけるプラグインとテーマの管理方法について詳しく見ていきましょう。

プラグインとテーマの保存方法

テーマとプラグインは、通常のWordPressサイトと同様に、WordPress環境のwp-contentディレクトリ内に保存されます。つまり、プラグインやテーマは、マルチサイト内で何回使用されているかに関係なく、それぞれ1回だけ保存されます。

プラグインのインストールと有効化

テーマをインストールできるのは特権管理者のみで、サイト管理者にはその権限がありません。また、ネットワークの設定によっては、「ネットワーク設定」 画面でサイト管理者によるプラグインの有効化も制限できます。

プラグインをインストールするには、特権管理者画面で 「プラグイン」>「新規追加」 に移動し、通常のWordPressサイトと同じ手順でインストールします。その後、プラグインをマルチサイト全体で有効化するかどうかを選択できます。マルチサイト有効化を行わない場合は、各サイトの管理者が自身のサイトで個別に有効化できます。

ネットワーク有効化されたプラグインは、マルチサイト内のすべてのサイトで実行され、各サイトの 「プラグイン」 画面にも表示されます。ただし、サイト管理者がそれらのプラグインを無効化することはできません。一方で、インストール済みのその他のプラグインについては、サイト管理者が個別に有効化できます。

テーマのインストールと有効化

テーマをインストールできるのは、特権管理者のみです。インストールするには、特権管理者画面の 「テーマ」 に移動し、通常のWordPressサイトと同じ手順でテーマをインストールします。

テーマの有効化については、マルチサイトは通常のWordPressサイトとは異なる仕組みを採用しています。テーマは、マルチサイト全体で有効化することも、個別のサイトに対してのみ有効化することも可能です。

注)マルチサイトでは、テーマを有効化することはできますが、「有効化」は行いません。これは、各サイトで有効化できるテーマが1つだけであり、その設定はネットワーク設定ではなくサイト設定から行うためです。

テーマをネットワーク全体で有効化するには、特権管理者画面の 「テーマ」 で対象テーマを探し、その下に表示される 「ネットワーク有効化」 をクリックします。

特定のサイトに対してのみテーマを有効化するには、「サイト」 画面で対象サイトの 「編集」 をクリックします。続いて 「テーマ」 タブを開き、テーマ名の下に表示される 「有効化」 をクリックします。

これにより、そのテーマがサイト管理者から利用可能になります。サイト管理者は、その中から使用したいテーマを選択して有効化できます。一方で、ネットワーク全体でも個別サイトでも有効化されていないテーマは、サイト管理者には表示されません。

つまり、WordPressマルチサイトでは、テーマとプラグインの有効化の仕組みに次のような違いがあります。

  • ネットワーク有効化されたプラグインは、ネットワーク内のすべてのサイトで実行され、サイト管理者は無効化できない。一方、ネットワーク有効化されたテーマ は、サイト管理者が必要に応じて選択・有効化できる状態になる。
  • ネットワーク有効化されていないプラグインは、サイト管理者が必要に応じて有効化可能。一方、ネットワーク有効化されていないテーマ は、そのサイト向けに個別に有効化されている場合にのみ利用できる。マルチサイト全体でも個別サイトでも有効化されていないテーマは、サイト管理者には表示されない。

関連記事:WordPressテーマを削除する方法

マルチサイトでのメディア保存の仕組み

WordPressマルチサイトでは、メディアの保存方法が通常のWordPressサイトとは異なります。

個別サイトで投稿や固定ページに添付ファイルをアップロードする際の操作画面は、通常のWordPressサイトと同じです。そのため、サイト管理者や編集者が違いを意識することはほとんどありません。違いがあるのは、ファイルの保存方法です。

WordPress環境でマルチサイトを有効化すると、wp-content/uploadsディレクトリ内にsitesというフォルダが作成されます。このフォルダには、マルチサイト内の各サイトがアップロードしたメディアファイルが保存されます。

マルチサイト内で新規サイトを作成するたびに(またはユーザーがサイトを作成するたびに)、sitesフォルダ内に、そのサイトのIDに対応する名前のフォルダが自動生成されます。ベースサイトのIDは 01であるため、マルチサイト内で最初に作成した新規サイトのIDは02になります。その結果、wp-content/uploads/sites/02というフォルダが作成されます。このサイトでアップロードされたファイルは、通常のWordPressサイトと同じく年・月ごとのディレクトリ構造で、このフォルダ内に保存されます。

一方、ベースサイトのアップロードファイルは、通常のWordPressサイトと同様にwp-content/uploadsフォルダに保存されます。マルチサイトであっても、ベースサイト用に追加のフォルダが作成されることはありません。

マルチサイトでのデータ保存の仕組み

マルチサイトでは、データの格納方法も少し異なります。

マルチサイトを有効化すると、以下の7つのデータベーステーブルが作成されます。これらは、ネットワークに関連するデータを格納します。

  • wp_blogs
  • wp_blog_versions
  • wp_registration_log
  • wp_signups
  • wp_site
  • wp_sitemeta
  • wp_sitecategories(任意で追加される)

マルチサイト全体のデータを保存する他のテーブルとして、wp_usersとwp_usermetaもあります(ユーザーは個々のサイトではなくマルチサイト全体で保存されるため)。これらのテーブルは、標準サイトのデータベースにすでに存在しているため、作成されません。

マルチサイトで新規サイトを作成すると、そのサイト用に11のテーブルが作成され、それぞれにサイトIDに対応する接頭辞が付されます。サイト02の場合は、以下のテーブルが生成されます。

  • wp_2_posts
  • wp_2_postmeta
  • wp_2_comments
  • wp_2_commentmeta
  • wp_2_users
  • wp_2_usermeta
  • wp_2_links
  • wp_2_term_relationships
  • wp_2_term_taxonomy
  • wp_2_terms
  • wp_2_options

プラグインの中には、サイトごとに追加のデータベーステーブルを作成するものがあります。このようなプラグインを有効化すると、同じテーブル接頭辞を使用しながら、プラグインが有効化されている各サイト向けのテーブルが作成されます。

また、マルチサイトの規模が拡大してサイト数が増えるにつれて、データベーステーブルの数も増加します。これにより、WordPressは各サイトのデータを個別に管理できるため、サイト管理者が他のサイトのデータにアクセスしてしまう心配はありません。

 

まとめ

WordPressのマルチサイトは、非常に強力な機能です。個人利用、コミュニティ運営、クライアント向けサービスの提供など、複数のサイトを構築・管理する場合に、ストレージ容量の節約や運用効率の向上に役立ちます。

マルチサイトにはさまざまな活用方法があります。個人サイトの管理はもちろん、クライアントサイトやコミュニティサイトのホスティング、企業内の複数サイトの運営、さらにはWordPress.comのようにユーザー自身がブログを作成できるプラットフォームの構築にも利用できます。マルチサイトの仕組みを理解し、使いこなせるようになれば、長期的に大きなメリットを得られます。

Rachel McCollin

2010年からWordPressサイトの構築をサポート。自己ホスティング型のWordPressをこよなく愛し、できるだけ多くの人がWordPressを利用して優れたウェブサイトを作成する手助けをしたいと日夜奮闘。