WordPressをマルチサイト化について学習した備忘録。
ユーザー管理
- ネットワーク管理者という役割が追加される
- サイト管理者の権限は、ネットワーク管理者よりも低いものになる
- サイト管理者は(自分のサイトで)新しいユーザーを追加できますが、そのユーザーは自分が追加された個々のサイトにのみアクセスでき、ネットワーク上のすべてのサイトにはアクセスできない
- ユーザーデータは共有され、各アカウントに各サイトのアクセス権限を付与することは可能
- サイト管理者とネットワーク管理者が作成・管理できる
- サイト管理者は自分のサイトのユーザー権限しか削除できない
URL
- ネットワークのURLは、設定の土台となっているサイトと同じ
- 既存サイトのURLは変更されない
- メインサイト
- TOP:https://test.com
- 投稿:https://test.com/blog/カスタム構造
- カテゴリ:https://test.com/blog/category/カテゴリ名
- サブディレクトリ「2nd」
- TOP:https://test.com/2nd/
- 投稿:https://test.com/2nd/カスタム構造
- カテゴリ:https://test.com/2nd/category/カテゴリ名
- サブディレクトリ「3rd」
- TOP:https://test.com/3rd/
- 投稿:https://test.com/3rd/カスタム構造
- カテゴリ:https://test.com/3rd/category/カテゴリ名
- メインサイトの投稿のURLに
https://test.com/blog/投稿名
のように/blog
が自動的に追加される- 消去する方法
- メインサイトのパーマリンク設定を
基本
にする - 参加サイト>ネットワーク管理>サイト>親サイト名の
編集
>サイトの編集>設定>Permalink Structure
の欄にカスタム構造のパーマリンク(/%postname%/ など)を入力する>変更を保存
- メインサイトのパーマリンク設定を
- 消去する方法
プラグイン
- ネットワーク管理者のみがインストール可能
- サイト管理者は有効化できるものの、新しくインストールすることはできない
- 一括更新が可能
- wp-contentディレクトリに保存される
- サイトネットワークで有効化されたプラグインは、すべてのサイトで有効化され、各サイト管理者は無効化できない
- ネットワークで有効化されていないプラグインは、サイト管理者が選択すれば有効化できる
- プラグインの有効状態、設定値は全てサイト毎に別設定となっていて、サーバーにアクセスがあった時にリクエストURLからどのサイトへのアクセスか判定され、対象テーブルが自動的に切り替えられて実行されます
- 子テーマで有効化されているプラグインは、ネットワーク管理のプラグイン画面でも削除ボタンが表示されない。
- マルチサイト非対応のプラグイン
- Duplicator(無料版)
- Siteguard
テーマ
- ネットワーク管理者のみがインストール可能
- サイト管理者は有効化できるものの、新しくインストールすることはできない
- 一括更新が可能
- wp-contentディレクトリに保存される
- ネットワーク全体または個々のサイトについてテーマを有効にすることができる
- テーマをネットワークで利用できる状態にするには、ネットワーク管理者の「テーマ」画面に移動し、該当するテーマを見つけて、その下の「ネットワーク有効化」(利用できる状態にする)リンクをクリックする
- 個別のサイトに対しテーマを利用できる状態にするには、「サイト」画面に移動し、関連するサイトの「編集」リンクをクリックします。「テーマ」タブをクリックし、テーマ名の下にある「有効化」リンクをクリックする
CSSカスタマイズ
- 各サイトのカスタマイザーに追記したCSSは、そのサイトのみ適応される
- テーマのstyle.cssに記述したスタイルは、同じテーマを使用しているすべてのサイトで適応される
メディア
- 各サイトへのアップロード用に個別のフォルダーが追加される
- マルチサイトを有効化すると、 wp-content/uploadsディレクトリに「sites」という新しいフォルダーが作成され、ここにネットワーク内のサイトにアップロードされたすべてのメディアが保管される
- 新しいサイトを作成するたびに、WordPressはその「sites」フォルダーに、サイトのIDと同じ名前の新しいフォルダーを作成
- ベースサイトID:
01
保存先URL:wp-content/uploads/
- ネットワークで作成した最初のサイトID:
02
保存先URL:wp-content/uploads/sites/2
- ネットワークで作成した最初のサイトID:
03
- 保存先URL:
wp-content/uploads/sites/3
- ベースサイトID:
- wp-content
- uploads
- 2022 // ID1のメディア保存先
- sites
- 2 //ID2のメディア保存先
- 2022
- 2021
- 3 //ID3のメディア保存先
- 2022
- 2021
- etc
- 2 //ID2のメディア保存先
- uploads
データベース
- サイトごとに個別のデータベーステーブルが作成されるものの、一部のデータ(ユーザーなど)はネットワーク全体でまとめて保存される
- マルチサイトを有効化すると、7つの新しいデータベーステーブルが作成される
- wp_blogs
- wp_blog_versions
- wp_registration_log
- wp_signups
- wp_site
- wp_sitemeta
- wp_sitecategories(任意で追加される)
- wp_usersとwp_usermetaはネットワーク全体で共通して利用される
- ネットワーク上に新しいサイトを作成すると、サイトIDに対応する接頭辞が付与されたテーブルが作成される
- サイトIDが
02
の場合、wp_2_
が接頭辞として与えられ、wp_2_posts
テーブルが作成される
WordPressアップグレード
- WordPressを更新>サイトネットワークをアップグレード
参考
- WordPressマルチサイト徹底解説(WordPressネットワークについて知っておくべきすべて)
https://kinsta.com/jp/blog/wordpress-multisite/
Related Tags