WordPress 3.0 が出たので、予習がわりにRC-2日本語版 で複数ブログの設定をやってみた。

新規インストールにはいいけど、バージョンアップの際は注意しないといけないことがいくつかあった。

サイトアドレスとWordpressのアドレスを別にしている場合には、移動させる必要がある。

それ以外ははインストール後にwp-config.phpを編集して、指示どおりに手順を踏めばよい。

wp-config.php を編集

wp-config.php の適当なところにdefine(‘WP_ALLOW_MULTISITE’, true);と記入する。後で追加する内容があるので、「編集が必要なのはここまでです」の上に書いておいた。


define('WP_ALLOW_MULTISITE', true);
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */

ALLOW_MULTISITEを記入した後でログインすると、「ツール」メニューの中に「ネットワーク」という項目が表示されるようになる。

ネットワークをインストールする

ここでいったん、すべてのプラグインを無効にするようにメッセージが出る

サブ・ドメイン(xxx.domain.tld)で運用するか、サブ・ディレクトリ(domain.tld/xxx)で運用するかどうか選択し、サイト名、管理アドレスを入力して「インストール」をクリックする。

サブドメインを選択した場合、DNSにワイルド・カードを設定していないと警告が出るが、無視して進めてもかまわない。

ふたたびwp-config.php を編集

wordpress-multisite
ネットワークをインストールした後の画面。wp-config.phpと.htaccess の設定内容が記載されている。
この内容で編集すれば、複数ブログの設定は完了する。

表示されている内容をwp-config.phpに書き込むだけだが、複数ブログをサブ・ドメインで運用するか、サブ・ディレクトリで運用するかによって、編集内容が変わる。

サブ・ドメインで運用する場合


define( 'MULTISITE', true );
define( 'SUBDOMAIN_INSTALL', true );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'domain.tld ); // 自ドメインを記入
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );

サブ・ディレクトリで運用する場合


define( 'MULTISITE', true );
define( 'VHOST', 'yes' );
$base = '/';
define( 'DOMAIN_CURRENT_SITE', 'domain.tld/path' ); // サイトのアドレスを記入
define( 'PATH_CURRENT_SITE', '/' );
define( 'SITE_ID_CURRENT_SITE', 1 );
define( 'BLOG_ID_CURRENT_SITE', 1 );

.htaccess を編集

それまで使っていたmod_rewriteの設定をすべて書き換える。内容はサブドメインでもサブディレクトリでも同じ。画面に表示されているものをそのまま書けばよい。


RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]

# uploaded files
RewriteRule ^files/(.+) wp-includes/ms-files.php?file=$1 [L]

RewriteCond %{REQUEST_FILENAME} -f [OR]
RewriteCond %{REQUEST_FILENAME} -d
RewriteRule ^ – [L]
RewriteRule . index.php [L]

新しいディレクトリを作成する

これもインストール画面に書いているが、wp-content 以下に blogs.dir を作成する。パーミッションは707とか、サーバーに合わせて設定する。

再ログイン

1度ログアウトしてからもう一度ログインすると、管理画面に「特権管理者」という項目が出来ている。

プラグインを有効にしたあとはMUと同じだが、NextGEN Gallery は再設定しておく。必要ならばすでにアップした画像も再配置しなければいけない。また、パーマリンクの設定がデフォルトに戻っているので、これも設定し直しておく。

NextGEN Gallery の設定

Gallery Pathの設定
「特権管理者」→「NextGEN Gallery」にパスを設定しておく。ブログごとに別のディレクトリを使うので、%BLOG_ID%変数を入れておくとよい。

/wp-content/gallery/%BLOG_ID%/

何か間違っているのか、管理ブログのギャラリーは相変わらず/wp-content/gallery以下に画像をアップロードしている。表示に支障はないが、ブログを追加したときにどうなるのかちょっと不安。
※ ブログを追加しても同様。また、個別の設定に%BLOG_ID%と入力すると「%BLOG_ID%」というディレクトリで出来てしまう。対応策を模索中。

Google-Sitemap-Genarator の修正

複数ブログを設定するとGoogle-Sitemap-Generatorが警告を出す。いずれ対応されると思うが、とりあえずの対策として関数をコメントアウトした。管理ブログ以外のサイトマップを作成出来るかどうかは不明。

プラグインのsitemap.php内の下記をコメントアウトすれば警告は出なくなる。


function Enable() {

//Check for 3.0 multisite, NOT supported yet!
/* ここからコメントアウト
if((defined(‘WP_ALLOW_MULTISITE’) && WP_ALLOW_MULTISITE) || (function_exists(‘is_multisite’) && is_multisite())) {
if(function_exists(‘is_super_admin’) && is_super_admin()) {
add_action(‘admin_notices’, array(‘GoogleSitemapGeneratorLoader’, ‘AddMultisiteWarning’));
}

return;
}
ここまでコメントアウト */

Written on 6月 18th, 2010 & filed under PHP Tags:
LEAVE A COMMENT
Comment
 
COMMENTS

    [...] WordPress 3.0で複数ブログを使う設定 « lainforest.org [...]

    2010年7月4日 at 23:58

    [...] wordpressをここを見てマルチユーザー化させました。 でも、ちょっと使い方が分からないです。 [...]

    2010年7月16日 at 17:54