WordPressにマルチサイトを起用する手順

8215 ワード

マルチサイトを通して
WordPressにdomain.com/endomain.com/jpのようなサブサイトを使えるようなことになり
多言語サイトを管理することができます

wp-config.php

まずはwp-config.phpファイルを開き、以下のコードを追加します

wp-congif.php
 define( 'WP_DEBUG', false );

 /* 編集が必要なのはここまでです ! WordPress でのパブリッシングをお楽しみください。 */

+define( 'WP_ALLOW_MULTISITE', true );

WordPress管理画面

まずは現在使われている中のプラグインを一旦全部無効化にします
(マルチサイト設定が完了後、またプラグインを有効にします)

次は、管理画面の左端のメニューの「ツール」→「サイトネットワークの設置」をクリック

そして「インストール」をクリック

指示通りにファイルを編集します

wp-config.php
 define( 'WP_DEBUG', false );

 /* 編集が必要なのはここまでです ! WordPress でのパブリッシングをお楽しみください。 */

 define( 'WP_ALLOW_MULTISITE', true );
+define( 'MULTISITE', true );
+define( 'SUBDOMAIN_INSTALL', false );
+define( 'DOMAIN_CURRENT_SITE', 'localhost' );
+define( 'PATH_CURRENT_SITE', '/willfarm/' );
+define( 'SITE_ID_CURRENT_SITE', 1 );
+define( 'BLOG_ID_CURRENT_SITE', 1 );
.htaccess
# BEGIN WordPress
# `BEGIN WordPress` から `END WordPress` までのディレクティブ (行) は
# 動的に生成され、WordPress フィルターによってのみ修正が可能です。
# これらのマーカー間にあるディレクティブへのいかなる変更も上書きされてしまいます。
 <IfModule mod_rewrite.c>
-RewriteEngine On
-RewriteBase /willfarm/
-RewriteRule ^index\.php$ - [L]
-RewriteCond %{REQUEST_FILENAME} !-f
-RewriteCond %{REQUEST_FILENAME} !-d
-RewriteRule . /willfarm/index.php [L]

+RewriteEngine On
+RewriteBase /willfarm/
+RewriteRule ^index\.php$ - [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).*) $2 [L]
+RewriteRule ^([_0-9a-zA-Z-]+/)?(.*\.php)$ $2 [L]
+RewriteRule . index.php [L]
 </IfModule>

# END WordPress

そして、管理画面をリフレッシュ
もう一度ログインします

これでマルチサイトの設置が完了になります