wordpressをたくさん同じドメイン内に入れたいが、管理画面を一つで行いたいということは大きなサイトを運営してされている方には多いかと思います。
実は、初期状態では、有効になっていませんが、wordpressの3.0から複数のサイトを一つの管理画面で管理できるようになっています。
wp-configの編集
wp-config.phpに追加してマルチサイトの機能をまず有効にします。
define('WP_ALLOW_MULTISITE', true);
を記入してサーバーにアップします。
すると、メニューのツールにネットワークというメニューが追加されます。
※ここでプラグインを入れている場合、一時的停止をさせられます。
ネットワークをクリックして後はインストールをクリック
.htaccessとwp-config.php
インストールをクリックした後にページに変更する点が記述されています。
1、wp-contentにフォルダを用意
サーバー内にフォルダを追加します。
wp-contentの中に、フォルダ名は何でもいいので、フォルダを追加し、書き込み権限を与えてあげます。
FTPのツールで右クリックして属性を表示させて書き込みにチェックを入れて上げます。
2、wp-confingを書き換える
wp-configを書き換えます。
書いてあるとおりwp-config内に書いてある
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */
という行より上に下記みたいな文字を貼り付けます。
※’DOMAIN_CURRENT_SITE’, ‘www.wwwwwww.wwww’ の部分がそれぞれ違います。
define( 'MULTISITE', true ); define( 'SUBDOMAIN_INSTALL', false ); $base = '/'; define( 'DOMAIN_CURRENT_SITE', 'www.wwwwwww.wwww' ); define( 'PATH_CURRENT_SITE', '/' ); define( 'SITE_ID_CURRENT_SITE', 1 ); define( 'BLOG_ID_CURRENT_SITE', 1 );
3、.htaccessを追加
.htaccessとは、ホームページを表示するためのapacheというサイトの設定を変更できるようになるものです。
表示されているテキストをメモ帳などに貼り付けて名前を.htaccessとして保存します。
※拡張子が.txtになってしまうと動かないので注意
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]
簡単にいうとURLを動的に設定できるようにしているみたいな感じです。
これでひととおり完了です。
うまくいくと
wordpress3.2だと下記のような状態になります。
wordpress3.1と3.0だと下記のような状態になります。
サイトネットワーク管理者のところをクリックすると
のようにページが表示されます。
メニューにあるサイトから新規追加を行うことで複数サイトを作れるようになります。
複数サイトでは、管理画面でプラグイン、テーマやそれぞれの設定も変更できるようになっています。