ネットワーク機能とWordPress MU Domain Mappingで複数ドメインを1つのWordPressでホストする

以前の記事に書いたように、私がやっている下記4つのサイト(主にブログ)を、1つのWordPressにまとめました。

WordPressってマルチサイトが出来るのは知ってるけど、別のドメインでも出来るの?と、言う人もいるかもしれません。
出来るんですね、それが。WordPerss MU Domain Mappingを使えばね!

まずはネットワーク機能を有効にする

WordPressをインストールしたら、何はともあれネットワーク機能を有効にして、マルチサイトを扱えるようにしなければなりません。

WordPressを通常インストール後、プラグインをすべて停止させていることを確認してから、wp-config.phpに下記の1行を追加します。

define ('WP_ALLOW_MULTISITE', true);

WordPressのダッシュボードを見ると、「ネットワークの設置」というメニューが追加されていると思いますので、これを選択します。

Wp install network

「WordPressサイトのネットワークの作成」画面が表示されるので、各項目を入力します。

「ネットワーク内のサイトのアドレス」は、複数ドメインを使う場合は「サブドメイン」を選択しておきます。
WordPressが既にサブディレクトリにインストールされている場合は、「ネットワーク内のサイトのアドレス」の選択が表示されず、常にサブディレクトリでのインストールになるため、複数ドメインでの使用が出来ません。

Wp install network 01

最後に「インストール」をクリックすると、下図のような画面が表示されます。

Wp install network 02

画面の指示通り、wp-config.phpと.htaccessを編集します。
wp-config.phpには追記、.htaccessは一部の書き換えになるので、注意が必要です。

Wp install network 03

再度ログインすると、WordPressのツールバーに「参加サイト」というメニューが追加されていることが分かります。
これで、WordPressのネットワーク機能は有効になりました。

WordPress MU Domain Mappingを導入

ここまでの作業で、元のサイトで使っているドメインの「サブドメインでなら」複数のサイトを作成出来るようになりました。
でも、「別のドメイン」を使うことは出来ないんですね。ここで、WordPress MU Domain Mappingプラグインを導入します。

プラグインの導入は、サイトネットワーク管理者のダッシュボードから行います。

Wp domain mapping 01

「wordpress mu domain mapping」でプラグインを検索すると、見つかるはずですので、インストールします。

Wp domain mapping 02

インストールが終わったら、ネットワークで有効化。

Wp domain mapping 03

設定メニューの配下に、「Domain Mapping」と「Domain」の2つのサブメニューが追加されました。

Wp domain mapping 04

でも、Domain Mappingを選択すると、何かメッセージが出るんですね。
メッセージよると、やるべきことは2つあります。

  • WordPress MU Domain Mappingプラグインのディレクトリにあるsunrise.phpを、wp-contentディレクトリに直下にコピーする
  • wp-config.phpを編集する

wp-config.phpには、下記の1行を追加します。

define('SUNRISE', 1);

メッセージで指示されたことをやって、再度、メニューからDomain Mappingを選択すると、表示される画面が変わります。

Wp domain mapping 05

標準的な環境なら、ここは初期状態のままSaveで良さそうです。

別のドメインでサイトを作る

まずWordPressの標準機能でサイトを作ります。

Wp domain mapping 06

この時点では、元のサイトのドメインのサブドメインになります。

次に、メニューからDomainを選択し、下図の画面でサイトにドメインを割り当てます。
「Site ID」は、「すべてのサイト」画面から該当サイトの「編集」画面を開くと、そのURLの末尾にidパラメータがあるので、そこから調べてください。

Wp domain mapping 07

最後に、「すべてのサイト」画面から該当サイトの「編集」画面を開き、ドメインを書き替えます。

Wp domain mapping 08

後は設定したドメインでアクセスがあった場合に、WordPressが導入されているディレクトリに処理を振り向けるようにWebサーバを設定しておきます。

まとめ

WordPressのネットワーク機能のメリットは、複数のサイトの管理の一元化、ユーザの一元化だと思いますが、WordPress MU Domain Mappingを使うと、別ドメインのサイトでもメリットを享受できるわけです。

WordPressを使ったサイトを複数管理する必要がある場合に、ぜひ、ご検討ください。

この記事を書いた人

井上 研一

株式会社ビビンコ代表取締役、ITエンジニア/経済産業省推進資格ITコーディネータ。AI・IoTに強いITコーディネータとして活動。2018年、株式会社ビビンコを北九州市に創業。IoTソリューションの開発・導入や、画像認識モデルを活用したアプリの開発などを行っている。近著に「使ってわかった AWSのAI」、「ワトソンで体感する人工知能」。日本全国でセミナー・研修講師としての登壇も多数。