●マルチサイト化~初期設定

multisite_multidomain
サブドメインも設定できます。

 

1.wp-config.phpの設定

ログアウトした状態でディレクトリ直下にあるwp-config.phpの設定を書き換えます。
以下のソースコードをwp-config.phpの一番最後に追記します。

/*マルチサイト機能有効化*/
define( 'WP_ALLOW_MULTISITE', true );

2.ネットワークの設定

管理画面にログインするとツールメニューの中に「ネットワークの設定」という項目が追加されているので
これを選択します。
マルチサイト化する前にプラグイン止めろ的なメッセージが出たら、プラグインのメニューから全部停止してから「ネットワークの設定」を行なってください。

wordpress-multisite02

3.ネットワークの作成

「WordPressサイトのネットワークを作成」の画面が出ます。ここに表示される内容に従って3つのステップの設定を行います。

※ wp-config.phpと.htaccessファイルのバックアップをとっておきましょう。

(1)wp-contentディレクトリの中に「blogs.dir」ディレクトリを新規作成します。
WordPress側からメディアファイルを保存するのに使われるので、書き換え可能なパーミッションに設定しておきます。

(2)wp-config.phpにさらにソースコードを追記します。
「/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */」の行より上に以下のようなソースコードを直前の行に追記します。

/*マルチサイト機能有効化 ↓ここから*/
define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', false );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'ドメイン' );
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );
/*↑ここまで*/

/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください

4..htaccessファイルに以下のソースコードを追記します。

.htaccessに最初から記述されている
↓以下のソースを入れたままだと無限ループになってしまうので、削除します。

# BEGIN WordPress

RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

# END WordPress

↓代わりにこれを入れます。

# マルチサイト機能有効化の追記 ↓ここから
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^([_0-9a-zA-Z-]+/)?files/(.+) wp-includes/ms-files.php?file=$2 [L]

# add a trailing slash to /wp-admin
RewriteRule ^([_0-9a-zA-Z-]+/)?wp-admin$ $1wp-admin/ [R=301,L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ - [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(wp-(content|admin|includes).*) $1 [L]
RewriteRule  ^[_0-9a-zA-Z-]+/(.*\.php)$ $1 [L]
RewriteRule . index.php [L]
#↑ここまで

5.サイトネットワークの管理

wordpress-multisite04

サイトネットワーク管理者→サイト→新規追加で、子ブログを作成できます。