y.o.designers-works

WordPressのマルチサイト設定(サブディレクトリ)について

WordPressのマルチサイト機能を使って、複数サイトをひとつのWordPressで管理する方法になります。マルチサイト機能では、サブドメインとサブディレクトリに対応しておりますが、ここではサブディレクトリについて解説していきます。

サイトを開設して一か月以内の場合

1.wp-config.phpの編集

define('WP_ALLOW_MULTISITE', true);

※「/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */」よりも前に記述

2:管理画面の編集

「ツール」に「ネットワークの設置」というメニューボタンが表示される
※プラグインは全て停止すること

3:wordpress サイトのネットワークの作成

wp-config.phpの編集

define('MULTISITE', true);
define('SUBDOMAIN_INSTALL', false);
define('DOMAIN_CURRENT_SITE', '●●●');
define('PATH_CURRENT_SITE', '/');
define('SITE_ID_CURRENT_SITE', 1);
define('BLOG_ID_CURRENT_SITE', 1);

※●●●は自分のサイトのURLが入る

.htaccessの編集

RewriteEngine On
RewriteBase /
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]

に置き換える形

あとは再度ログインすればOK!

サイトを開設して一か月以上経っている場合

1:バックアップをとる
2:投稿記事を管理画面からすべて削除する
3:データベースで1ヶ月以前の投稿を0にする

SQLタブで下記コードを入れて一カ月以上前の投稿をピックアップ

SELECT * FROM wp{prefix}_posts WHERE post_date < DATE_SUB(NOW(), INTERVAL 1 MONTH) AND post_status = 'publish'

{prefix}はテーブル接頭辞、post_status = ‘publishは公開中の投稿って意味
非公開や下書きの投稿は”private”,”draft”に

本日の日付に変更する

UPDATE wp{prefix}_posts SET post_date = DATE(NOW()), post_date_gmt = DATE(NOW()) WHERE post_date < DATE_SUB(NOW(), INTERVAL 1 MONTH) AND post_status = 'publish';

で実行すれば記事の投稿日時が変更できる

パーマリンクに付いた「/blog」を消す方法

WordPressをマルチサイト化するとパーマリンクの末尾に「/blog」が自動的に付け加えられてしまいます。
いらないので削除します。

1:まず始めに親サイト(/blogを消すサイト)の管理画面から「設定」→「パーマリンク設定」内の「共通設定」をデフォルトにします。

2:次に「ネットワーク管理者」の管理画面から「サイト」→「すべてのサイト」へ進み、「/(親サイト)」の「編集」をクリックします。

3:「設定」タブ内にある「Permalink Structure」の項目が、先ほどパーマリンクをデフォルトに設定していれば空欄になっているはずです。ここに普段利用しているカスタムパーマリンクを記入してください。

4:サーバー内の「wp-admin」ディレクトリの「options-permalink.php」を開きます。中盤あたりに「$blog_prefix = ‘/blog’;」という記述があるところを「$blog_prefix = ”;」に変更。

まとめ

サイトを作成してから1カ月以上経った場合データベースの修正もしなければならないのでサイト設計の段階でマルチサイトにするか、しないかは決めておいた方がいいです。
プラグインによってはマルチサイトに対応していないのがあるのでそこら辺も意識しなくてはならないですね。

スポンサーリンク

他にオススメな記事