読者です 読者をやめる 読者になる 読者になる

ウェブ学のすすめ

Study of Web Design & Programing

WordPress 3.4 をマルチサイト化(複数サイト管理化)する方法|ローカルサーバー編


f:id:vinton:20130414114405p:plain

自宅のローカルサーバー(XAMPP)にインストールしたWordPressをマルチサイト化(複数サイト管理化)してみました。

<実験環境>

  • OSWindows 7 64bit
  • エディター:Terapad
  • ローカルサーバー:XAMPP ver1.7.7

ステップ1:準備

WorPressフォルダー直下にある「wp-config.php」をコピーして他に保存しておく。

UTF-8Nで保存できるエディターを用意しておく(Terapadなど)。

TeraPad

使ってはいけないもの:

wp-config.php の編集 - WordPress Codex 日本語版

ステップ2:wp-config.phpの編集

「wp-config.php」をエディター(Terapadなど)で開く

84行目

define('WP_DEBUG', false);


86行目

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

の間に

/**
/* マルチサイト */
define('WP_ALLOW_MULTISITE',true);

を追加します。

ステップ3:ネットワークの作成

XAMPPを起動してブラウザーでwordpressの管理場面を開きます。

↓「ツール」を開くと「ネットワークの設置」が新しく表示されているので選択

↓プラグインが有効になっている場合は停止させます。

↓ネットワークの作成画面が表示されるので各設定を行い、「インストール」をクリック

  • サブディレクトリへのインストールlocalhost の場合は、サブディレクトリ形式のみ。
  • サーバーのアドレス:サイトネットワークのアドレス「localhost
  • ネットワークのタイトル:ネットワークの名前
  • 管理者のメールアドレス:自分のメールアドレス


ステップ4:ネットワークの有効化

まず「wp-config.php」と「.htaccess」をバックアップしておきます。心配でしたら「wordpress」フォルダーごとバックアップしておいたほうがいいかもしれません。

C:\xampp\htdocs\wordpress/wp-content/blogs.dir となるように「blogs.dir」フォルダーを作成。

C:\xampp\htdocs\wordpress/ にある「wp-config.php」ファイルの、/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。*/ という行より上に以下のコードを追加。

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
$base = '/wordpress/';
define('DOMAIN_CURRENT_SITE', 'localhost');
define('PATH_CURRENT_SITE', '/wordpress/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);
C:\xampp\htdocs\wordpress/ の .htaccess ファイルを開いて以下のコードに置き換える。

↓最初このように記述されているので全部削除し、

↓以下のコードをペーストする。

RewriteEngine On
RewriteBase /wordpress/
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:サイトネットワーク管理者

↓「参加サイト」という項目が追加されているので「サイトネットワーク管理者」を選択

↓「設定」>「ネットワークの設定

↓「言語の設定」をJapaneseに変更

↓「サイト」>「新規追加

↓新しくサイトを追加できます。

  • サイトのアドレス:サブディレクトリ名を決めます。/localhost/wordpress/(ディレクトリ名)となります
  • サイトのタイトル
  • 管理者メールアドレス

↓サイトを切り替えるには「参加サイト」から簡単に切り替えができます。

↓新しく作成したサイト。デフォルトテーマが反映されています。

↓先日作成したサイト。カスタマイズしたテーマが反映しています。

次はレンタルサーバーの方でも試してみたいと思います(できればサブドメイン形式で)。