[Wordpress] I tried to create a multi-site. Verification of

【WordPress】マルチサイトを作ってみた ~~マルチサイトって使い勝手いいの?の検証~~

公開日:2019年9月16日 使い方など
Knowledge Base 画像

WordPressでサイトを作っている人なら一度は耳にしたことがある「マルチサイト」。Wordpress用語ではネットワークと言われる機能で、マルチサイトの仕組みや機能を簡単に説明すると

  • 1つの管理画面内に複数の子供のサイトを作り、親サイトから管理できるようにする
  • 子サイト独自の管理者を設けてそれぞれのサイトを管理させることができる
  • 親サイトへインストールしたプラグインを自動的に反映させる、またはインストールだけしておいて有効/無効を各子サイトの管理者に任せることができる
  • 親サイトの管理者(特権管理者)は子サイトのすべての操作ができる

といったことができます。

感覚としては無料ブログサービスで簡単にユーザーがブログを作ったりカスタマイズしたりできるような仕組みということですね。

私も長いことWordpressを使っていて、当然マルチサイトというのは知ってはいるのですが、実際に自信で作ってみたことがない(本当に何ができるのか?逆に何ができないのか?をしっかり理解しているわけではない)ので、知識深耕を兼ねて実際に作ってみました。

これからWordpressのマルチサイト化をしたいという方の参考になればという思いで可能な限り詳細な備忘録として公開しますが、何分初めての作成ですので説明が足りなかったりすることもあるかと思いますのでご容赦ください。

マルチサイト化に関してはいろいろなサイトで手順などが紹介されていますが、今回は素直に公式コーデックスの手順で実行してみることにしました。

マルチサイト化は既に稼働しているシングルサイトで行うとトラブルになることが多いようですので、今回はサブディレクトリ(multiという名前のディレクトリ)に新規インストールしたシングルサイトに対してマルチサイト化を行いました。

公式ページやいろいろなサイトの情報によれば既存のシングルサイトからマルチサイトへの移行で途中まで進行した後元に戻すことは非常に困難なようですので、既存サイトのマルチサイト化をしたいという方は、いざとなったらサイトの再構築(完全削除して再度復元)ができるスキルが必要ですので、再構築に自信のない方は移行は行わない方がいいでしょう。

この記事を見つけて「やってみよう!!」と思った方は、一度すべての内容を見て自身にできるかな?必要な機能なのかな?というのを判断してから作業を進めることわお勧めします。

WordPressをマルチサイト化(ネットワーク化)する手順

シングルサイトのインストール

まずはマルチサイト化する基となるシングルサイトを作る必要があります。これは新たにドメインを取得してWordpressをインストールしてもいいでしょうし、今回のように既存のドメインの中に作ったフォルダ(サブディレクトリ)にWordpressをインストールしてもいいでしょう(今回は後者で行います)。

シングルサイト(親サイト)のインストールは自動でも手動でも好きな方法でいいでしょう。インストールが終わったら一度ログインしてきちんと動作しているかの確認をしておきます。

公式コーデックに書かれていますが、一旦すべてのプラグインを停止しないと不具合が出ることがあるようですから、インストールしっぱなしの状態でマルチサイト化を行います。

マルチサイトとして使えるようにする

単独で機能しているサイトをマルチサイトとして動作させるための設定(正確にはマルチサイトで動作させるための許可)を行います。

これを行うにはサイトのwp-config.phpを開き、
「/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */」
または
「/* That’s all, stop editing! Happy blogging. */」
という記述(wp-config.phpにある上のコメントは前者の日本語の記述の場合と後者の英語の記述の場合があります)よりも上に

define ('WP_ALLOW_MULTISITE', true);
【注意】コードをコピーして使用する前に必ずお読みください

この記事内にコードが記載されている場合、コードはそのままコピー(いわゆるコピペ)してお使いいただいても構いませんが、以下の件にご留意ください。

使用については自己責任でお願いします

コードの確認は私の管理するサイト、またはテスト環境で問題が起こらなかったものですので、お使いの環境での動作等を保証するものではありません。

万が一このコードを使用してサイトに重篤なトラブルが生じても当サイト、当サイト管理者は一切責任を負いません

コードの変換エラーなどにより動作しない場合、更新エラーが出る場合があります

コードをそのままコピーしても問題なく使えるよう文字列変換を行った上で掲載しておりますが、希に変換できていない場合があり、コードエラーとなることがあります

その場合には以下の方法で修正を行ってみてください

  1. コードの中に全角の記号が入っていませんか?
  2. 半角にすることで解消できます
  3. コードの中に全角の空白(スペース)がありませんか?
  4. 半角にすることで解決できます
  5. コードは合っているはずなのに更新できないときは
  6. 特にエラーの出た行内に日本語での文字列が入っている場合には全角での文字列があるということでエラーになる場合があり、Wordpressのエディタチェックではこれを「’」や「)」など閉じ子のエラーとして認識され更新できないことがあります。エラーとして返される行の先頭に空白がある場合には空白をなくすことできちんと認識され更新されるようになることが多いです。
  7. 「何かが間違っています...」と表示され、更新できないときは
  8. このエラーは本当に何がエラーなのかをWordpressのチェックが判断できない場合に発生します。解決策としてはその画面を開き直すことなのですが、その際希に元のコードがすべて削除されてしまう場合がありますので、今表示されているコードを一旦どこかへコピーしてからページの再読み込みをするようにしてやり直します。
    ※このエラーは不明なエラーなので予期せぬ動きをする可能性がありますので特に慎重な対処が必要です
これらのエラー対処については以下のページが参考になるかも知れません

コードを転載する場合には

ご自身のサイトで当ページで紹介しているコードを転載される場合には当ページへのリンクを入れていただきますようお願いいたします

を挿入します。

※この段階で???という方は、Wordpressのファイルやフォルダの編集などに慣れていない方と推察しますので、マルチサイト化はしない方が無難でしょう

wp-config.phpの編集がきちんとできているかは管理画面(ダッシュボード)をリロードしてみて、ツールメニュー内にサイトネットワークの設置という項目が出てくるかで判断できます(下図)。
【WordPress】マルチサイトを作ってみた ~~マルチサイトって使い勝手いいの?の検証~~

マルチサイトとして動作するようにする

前項の措置でマルチサイト化できるようになったという前準備が終わりました。

次に行うのは実際にマルチサイト化(親子サイト化)をする設定です。

ここで決めておかなければならないことがあります。それは

  • 追加していく各サイトを、新たな仮想サブドメインとして作成するか
  • 親サイトがhttps://aaa.bb/だった場合、追加するサイトはhttps://ccc.aaa.bb/になる

  • 追加していく各サイトを、サブディレクトリとして作成するか
  • 親サイトがhttps://aaa.bb/だった場合、追加するサイトはhttps://aaa.bb/ccc/になる

のどちらにするかということ。これは一回決めて設定してしまったら元に戻す、変更することはできませんから注意が必要です。

この2種類の大きな違いは検索エンジンから見たそれぞれのサイトの扱い方

  • サブドメインはすべてのサイトが別々のサイトとして検索エンジンから認識される
  • サブディレクトリはすべて親サイトの一部として検索エンジンから認識される

という違いがあります。
※これについては検索エンジンによってバラバラなので確実にそうとは言えないですから参考としてください

今回は結構たくさん問題が発生していると思われるサブディレクトリ型を選択してみることにしました。
・・・とその前にサブディレクトリにインストールしたWordpressをマルチサイト化する場合には「サブディレクトリ」しか選べないようです・・・(下図赤枠内)
【WordPress】マルチサイトを作ってみた ~~マルチサイトって使い勝手いいの?の検証~~
まあよく考えたら、サブドメインは今回親サイトをインストールした「/multi」というディレクトリよりも上階層なのでその階層を操作できない(操作する権限がない)のですからサブドメインが選択できないのはすごく普通(逆に操作できたら恐ろしい・・)なんですけどね。

脱線気味だ・・・元に戻して・・・管理画面(ダッシュボード)からツールサイトネットワークの設置を開いて画面を確認し、インストールをクリックします。

マルチサイトとして本格稼働させる

最終的に次の画面で出てくるコードを指示通りwp-config.phpと.htaccessファイルへ追記して、マルチサイトを有効化します。
【WordPress】マルチサイトを作ってみた ~~マルチサイトって使い勝手いいの?の検証~~

各ファイルへの措置が終わったら再ログインする必要がありますので同じ画面の「ログイン」リンクから再ログインしましょう。

案外すんなりマルチサイト化完了!

再ログインしてみたら子サイトを管理する画面(通常の管理画面とほぼ同じ)が表示され、マルチサイト化は完了しました。

今回行ったのは

  • ドメインにWordpressのシングルサイト1つ
  • ドメインディレクトリ内に別のディレクトリで稼働するWordpressのシングルサイト1つ

があるちょっと複雑な環境(だからやってみた感もあります)。もしやそれらのサイトに何等かの影響があるのでは?と思ってましたが問題ありませんでした。

何だかもっと苦労するのかなぁ?と思っていましたがちょっと拍子抜け(笑)です。

あとはサイトを追加して複数の子サイトを管理していくだけということになります。

初心者でもできる「カスタム投稿タイプ(カスタムポストタイプ)」の設定方法と使い方

【WordPress】固定ページの使い方(何故固定ページが必要なのか?)

【Simplicity】リンクカード(ブログカード)のフッターに「内部リンク」「外部リンク」の別を文字で表示する方法


最終 マルチサイトでできること・できないこと

・・・とここまで読むといろいろなことができそうな感じがしますが、実際にできること、できないことをまとめます。

もともとマルチサイトの子サイトはアップロードフォルダ以外はすべてネットワーク管理サイト(ネットワーク管理画面のサイト)のプログラムを使っているだけなので、子サイト独自の・・・というのは原則実現不可能になっていますから、いい面と悪い面が当然ありますね。

子サイトで有効化できるプラグインやテーマはすべてネットワーク管理画面から

マルチサイトにすることで、子サイトの管理者は自由にテーマやプラグインを追加することができません。

基本的にマルチサイトは「ネットワーク管理画面」にアクセスできる【特権管理者】がテーマやプラグインのインストール権限を握っています。つまり「このプラグインは使ってもいいよ!」と許可していくわけですね。

インストールしたものに対して、各子テーマの管理ユーザーが使うか使わないかの選択をするようになっています。

プラグインについて

  • ネットワーク管理画面から「ネットワーク有効化」したプラグインはすべての子サイトで強制的に有効になる
  • 子サイトの管理者は特権管理者がインストールしたものに対して有効化するか否かの選択ができる
  • ※子サイトの管理者にプラグインをインストールする権限はない

  • 「ネットワーク有効化」されたプラグインが何なのかは子サイトの管理者は分からない
  • ※子サイトへ特権管理者としてログインした場合のみ表示される

  • 子サイトの管理者はプラグインファイルへの変更を加えることはできない

という感じの動きや流れになります。

また、この子サイトだけ使えるようにしておくということはできず、基本すべてのサイトに共通のプラグインが表示されます。

※マルチサイトで動作しないプラグインは使用できないので、追加できる機能は限られてきます

テーマについて

プラグイン同様に特権管理者がインストールし、「ネットワーク有効化」されたものについて各子サイトの管理者が有効化できるようになっています。

テストしたところ、複数の子サイトで同じテーマを使った場合でもテーマカスタマイザーで変更したものについては各子サイト独自の表示にすることができるようです。
※テーマにマルチサイト対応のものがあるのか?については試していません

総合的に見て、1つのサイトで言語の違うサイトを子サイトとして用意して稼働させるといった使い方や、無料ブログサービスのようにある程度のデザイン変更はできるけどあとは記事を書くだけという機能に限定すれば管理は非常にしやすくなるとは思います。

が、本当に共通の機能、共通のデザインというサイトでなければ自由度が失われるだけですから、シングルサイトをいくつも作って、基準となる(メインとなる)サイトのダッシュボードに各シングルサイト管理画面へのリンクをいれればいい話じゃないかなぁというのが最終的な私の印象です。

時間をかけて作ってみて私的にはちょっと残念でしたが、実際に作ってみることで100%ではないにせよマルチサイトについて理解できたのでいい勉強になりました。

ひまあーと(管理人)
  • 記事の作者: ひまあーと(管理人)

  • ☆最後までお読みいただきありがとうございました。記事作者のひまあーとです。
    ☆Wordpressでサイトをカスタマイズしていく上で有用な情報を配信しつつ、「ココナラ」でサイトカスタマイズのお手伝い、不具合の修復、サイト引っ越し代行などをさせていただいております。
    ☆Wordpressネタが多いですが、趣味の「園芸」「卓球」などの情報や日々の出来事などもどんどん増やしていきますのでよろしくお願いいたします。


いつでもご相談・サイトカスタマイズの依頼を受け付けています

Wordpressのカスタマイズ、不具合解消のご相談はすべてココナラのダイレクトメッセージからお受けしております。まずはこちらのバナーからお気軽にお問い合わせください。

※一度もココナラを使ったことがない方はココナラへの無料登録が必要です。こちらから登録後、上のリンクをクリックする、またはココナラトップページから「ひまあーと」を検索してお問い合わせください。


【スポンサーリンク】


記事の拡散にご協力をお願いします

閲覧いただきありがとうございました。役に立つ情報でしたら是非SNSでシェアをお願いします

関連情報


コメントをどうぞ

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)