有名ブログシステム(CMS)では、Movabletype では複数のブログが簡単に構築できるのが有名ですが、Wordpress でも同じような運営の仕方ができるかをよく聞かれます。
可能なのですが、「隠し機能」なのか何なのか、コードを追記しないと使えないようになっています。
Wordpress では バージョン 3.x 以降から、この機能があるみたい。
Drive Netowork でワンクリックインストールされる WordPress のバージョンは 2.9 なので、この機能を使うために、まずは手動でアップデートします。
バージョンを 3.1.4 にアップデートしました。
v3.2 から php5 が必要要件になるので、Drive Network では、このバージョンが最終バージョンになるのかと思います。
次に、wp-config に、設定を記入してマルチサイト機能を on にします。
define ('WP_ALLOW_MULTISITE', true);
「ツール」の中に「ネットワーク」という項目が増えています。
こちらをクリックして設定画面を表示。
この時、いくつかのプラグインが有効になっていると処理できないので、設定画面からプラグインを無効にしておきます。
ネットワークのタイトル(任意の文字)や管理者のメールアドレスを追加入力して、画面下のインストールボタンをクリック。
Wordpress をインストールしたディレクトリの中にある「wp-content」の中にサブディレクトリを作るため「blogs.dir」という名前のディレクトリを作成。このディレクトリは、Wordpress によって新規に作成されるブログにのファイルアップロード先になるため、書き込み権限を与えておきます。chmod 707 とか。
再び、wp-config に設定を追記します。
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 );
セキュリティを考慮して、認証用キーも追記。
define( 'AUTH_SALT', '【文字列】' ); define( 'SECURE_AUTH_SALT', '【文字列】' ); define( 'LOGGED_IN_SALT', '【文字列】' ); define( 'NONCE_SALT', '【文字列】' );
WordPress をインストールしたディレクトリにドットファイルを設置して、設定を overwrite。
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]
ログインし直さないと画面に反映されないので、ログアウトした後にもう一度入り直す。
右上に「サイトネットワーク管理者」の項目が追加されています。
左メニューには、サイト管理やユーザー管理のできるメニューがある特別権限の画面になります。
「サイト」という項目が左メニューに増えているので、ここから新規追加をすれば、複数のブログを作って運営することができます。
ダッシュボードには「参加サイト」という項目が表示され、ユーザーアカウントに紐づいた管理権限を持つサイト(ブログ)を管理することができます。
また、新規で作ったサイト(ブログ)は、新しくログインIDやパスワードが発行されるので、利用者ごとにアカウントを発行して管理することができます。友人にブログをプレゼントしたり、〇〇〇〇のようなブログポータルの運営なども(頑張れば)可能です。
それぞれのサイトに異なるテーマ(テンプレート)を適用させることができます。
ここでは、多言語対応したサイトのため、違う言語で書かれたコードのテンプレートを用意して、それぞれに適用しています。
コメント