マルチサイト機能
マルチサイト機能を使うと、1つのWordPressインストールで複数のサイトを一括管理できます。企業の複数ブランドサイトや、多言語サイトの運営等で活用されます。
① マルチサイトとは
マルチサイトは、1つのWordPressコアと1つのデータベースで、複数の独立したサイト(ネットワーク)を運営できるWordPress標準機能です。各サイトは個別のURL・投稿・ユーザー権限を持ちますが、WordPress本体・プラグイン・テーマのファイルは共有されるため、更新作業をネットワーク全体で一元管理できます。通常のWordPressを個別に何本もインストールする場合と比べて、サーバーリソースや管理の手間を抑えられるのが最大の利点です。
② 向いているケース・向いていないケース
- 同じ会社が運営する複数のブランドサイトを一括管理したい
- 大学・自治体等で、部署ごとに個別サイトを持たせたい
- プラグイン・テーマの更新作業を一元化したい
- 言語ごとに完全に別サイトとして多言語サイトを構築したい
向いていないケース個人ブログを複数運営したいだけであれば、それぞれ独立したWordPressをインストールする方がシンプルです。マルチサイト化は一度有効にすると通常の構成に戻すのが煩雑なため、慎重に検討してください。
③ ドメイン型とサブディレクトリ型
マルチサイトのネットワーク構成には、大きく分けて2つのタイプがあります。
| タイプ | URL構造の例 | 特徴 |
|---|---|---|
| サブディレクトリ型 | example.com/site1/、example.com/site2/ | 同一ドメイン内でパスを分ける方式。設定がシンプルで、追加のDNS設定が不要 |
| ドメイン型(サブドメイン/独自ドメイン) | site1.example.com、または完全に別の独自ドメイン | 各サイトを別ドメインとして運営できる。サイトごとにDNS・SSL証明書の設定が必要 |
独自ドメインの割り当てについてWordPress 4.5以降、ドメインマッピング機能がコアに標準搭載されているため、追加プラグインなしで各サイトに独自ドメインを割り当てられます。
④ 有効化の基本的な流れ
- 作業前に必ずデータベース・ファイル一式をバックアップする
- wp-config.phpに
define('WP_ALLOW_MULTISITE', true);を追記する - 管理画面の「ツール」→「ネットワークの設置」から、サブディレクトリ型かドメイン型かを選択して設置を進める
- 画面の指示に従い、wp-config.phpと.htaccess(またはNginx設定)に追加の記述を反映する
- 再度ログインし、ネットワーク管理画面から各サイトを追加・設定する
既存サイトへの適用は慎重にすでに運用中のサイトをマルチサイト化する場合は影響範囲が大きいため、必ずバックアップを取り、可能であればテスト環境(ステージング環境)で事前に確認してください。
⑤ 導入前に検討すべきこと
- プラグイン・テーマの共有:ネットワーク全体で有効化する方法と、サイトごとに個別有効化する方法があるが、プラグインによってはマルチサイト対応状況が異なる
- ユーザーアカウントの扱い:ユーザーアカウントはネットワーク全体で共有され、サイトごとに異なる権限を割り当てる形になる
- メディアライブラリの容量:各サイトのアップロードファイルはネットワーク全体の容量制限の対象になる場合がある
- バックアップ・移行の複雑さ:通常のサイトよりバックアップ・サーバー移行の手順が複雑になりやすい
⑥ よくある質問(FAQ)
マルチサイトを有効化した後、通常の構成に戻せますか?
技術的には可能ですが、データベースの構造が変わるため簡単ではありません。各サイトのデータをエクスポートし、通常のWordPressに個別にインポートし直す作業が必要になります。導入前に本当にマルチサイトが必要か、慎重に検討することをおすすめします。
ドメイン型とサブディレクトリ型はどちらを選ぶべきですか?
それぞれのサイトを完全に別ドメインとして運営したい場合はドメイン型、example.com/site1/のようにパスで分けて運営したい場合はサブディレクトリ型を選びます。ドメイン型は独自ドメインの追加設定(DNS・SSL証明書)がサイトの数だけ必要になる点に注意してください。
独自ドメインを各サイトに割り当てることはできますか?
はい、WordPress 4.5以降はドメインマッピング機能がコアに標準搭載されているため、追加プラグインなしで各サイトに独自ドメインを割り当てられます。
マルチサイトの各サイトで異なるテーマ・プラグインを使えますか?
テーマは各サイトごとに個別に選択できます。プラグインはネットワーク全体で有効化する方法と、サイトごとに個別有効化する方法の両方に対応していますが、プラグイン側がマルチサイト対応しているかどうかによって挙動が異なる場合があります。