マルチサイトの第4弾です。前回、ネットワーク内のサイト複製や削除が簡単にできることが分かりました。最後はいよいよマルチサイトそのものを解除したうえで、サイト全体を綺麗に削除する手順です。
1.マルチサイト解除の準備
単にマルチサイトを解除するだけなら、wp-config.phpと.htaccessを差し替えるだけで出来ますが、子サイトが存在する状態でそれをやると、子サイト内のコンテンツが親サイトに合併統合されてしまいます。しかも、それに伴うURL変更で大量のリンク切れが発生するなどの問題があります。なので事前に子サイトを引っ越し整理するなど、ある程度の筋道をつけてからやったほうが安全です。
1-1. 事前にマルチサイトをバックアップする
今回は実験なのでバックアップの工程は省きますが、本来であれば、マルチサイトを解除する前に全体のバックアップをとっておきます。そもそもマルチサイトに対応したバックアップ用プラグインは選択肢が少ないですが、BackWPupであれば無料版でもマルチサイト対応しています。
(長くなるので今回はBackWPupについては割愛します。ただ、マルチサイトのバックアップに関する情報は少ないので、いつか別記事でまとめてみたいと思います)
1-2. マルチサイト解除の準備(子サイトの削除)
前述のとおり、単にマルチサイトを解除するだけなら子サイトの削除は必須ではありません。しかし今回は子サイトの引っ越しが済んだものと仮定して、ネットワーク内の子サイトをすべて削除してからマルチサイト解除をしていきます。
子サイトの削除のやり方は前の記事で紹介したとおりです。
以下は、親サイトひとつの状態に戻したところ:
1-3. ネットワークの全プラグインを停止
それから、サイトネットワーク内の全プラグインを停止します。
一方、親サイト側で個別に有効化したプラグインについては、停止させなくても大丈夫です。
2. マルチサイトを解除する
準備ができたら、いよいよマルチサイト解除です。最初にマルチサイト化したときに、wp-config.phpと.htaccessのオリジナルのバックアップを取りましたが、解除するときにはそれが必要になります。保存時にwp-config_original.php、.htaccess_original、などとしていたファイル名を元に戻しましょう:
・wp-config.php ※オリジナルのバックアップ
・.htaccess ※オリジナルのバックアップ
2-1. wp-config.phpと.htaccessのオリジナル状態
念の為、wp-config.phpと.htaccessのオリジナルファイルの該当箇所の記述が以下ようになっていることを確認してください。
①wp-config.phpのオリジナルはこうなってます:
define('WP_DEBUG', false);
/* 編集が必要なのはここまでです ! WordPress でブログをお楽しみください。 */
②.htaccessのオリジナルはこうです:
# BEGIN WordPress
# "BEGIN WordPress" から "END WordPress" までのディレクティブ (行) は
# 動的に生成され、WordPress フィルターによってのみ修正が可能です。
# これらのマーカー間にあるディレクティブへのいかなる変更も上書きされてしまいます。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress
2-2. 構成ファイルを上書きしてマルチサイトを解除
それをFTPでサーバ側に上書きします。すると、自動的にWordPressからログアウトされるので、再度WP管理画面にログインします。この時点でもうマルチサイトは解除されています。再ログインすると、親サイトのWP管理画面になっていて、サイトネットワーク関連の導線が消えているのがわかります。
これでマルチサイト解除は完了です。親サイトは通常のシングルサイトに戻りました。
(もし、親サイトをこのまま運用するのであれば、サイトネットワーク側で停止したプラグインを再び有効化してください。なお、NS Clonerはマルチサイト専用のプラグインなので削除しておきましょう)
3. 親サイトを削除する
最後に、親サイトをまるごと削除する手順をざっくり紹介します。
マルチサイト環境で子サイトを削除するのはクリック一発で簡単でしたが、シングルサイトとなったWordPressの完全削除はそこまで単純にはいきません。WordPress本体のアンインストールだけでは不十分です。サイトの全データを保持しているのはDBなので、DB削除をセットで実施する必要があります。
3-1. 削除対象サイトのDB名を事前に調べる
作業開始するまえに「削除対象のサイトがどのDBを使っているか?」を調べておきましょう。
WPサイトで使っているDB名をきちんと控えていれば簡単ですが、分からなくても大丈夫。ちょうど、ローカル保存されてるwp-config.phpの話をしたばかりなので、ついでにDB名を調べる方法を紹介します。wp-config.phpを開いて、次の記述を探してください。これがDB名です。
/** WordPress のためのデータベース名 */
define('DB_NAME', '★ここにDB名が書いてあります★');
その下にもずらずらーっとDBのユーザ名とかパスワードとか重要な情報がたくさん書かれていますので、作業が完了するまでこのファイルは消さないようにしてください。
3-2. WordPressサイトの完全削除の手順
WordPressを綺麗に削除するには「構成ファイルの削除」と「DBの削除」の二段階が必要です。具体的なプロセスはレンタルサーバによって異なるので、ここでは一般論にとどめます。
①WordPressの構成ファイルをすべて削除する。
いわゆるWordPressのアンインストールです。サーバによってやり方が違うので一概に言えません。ただ多くの場合、インストール済みのWordPressの一覧を表示する画面があるので、そこで「アンインストール」的なボタンを押すと、構成フォルダごと自動削除してくれます。(FTPで手動削除しても同じです)
※BackWPup等でサーバ上にバックアップファイルを保存している場合、この操作でバックアップも全部消えますので、作業の順序には十分注意してください。
②サイトに紐付いていたデータベースを削除する。
3-1で調べたDBを削除します。これもサーバによって違うので一概に言えませんが、どこかに必ずDB一覧みたいな画面があるので、そこで対象DB名を見つけて「削除」ボタンを押せば消えます。(PHPMyAdminで手動でDB削除しても同じです)
上記の①にしても②にしても、運用中の他のサイトやDBを誤って消してしまわないように十分注意してください。レンタルサーバは操作が簡単ですが、ボタンひとつミスっただけでどんな巨大サイトも一瞬で吹っ飛びます。作業前に、運用中の他のサイトの最新バックアップを安全な場所に複製しておくくらいの用心深さはあっていいと思います。
あとは状況に応じて、空いたドメインをどう扱うかを決めてください。(解約/削除するか、空のまま温存するか、別サイトに紐付けるか、etc)
4. マルチサイト導入から解除までのまとめ
以上、WordPressをマルチサイト化するところから、子サイトの作成や削除、テーマやプラグインの扱い、そして最終的にマルチサイトを解除してサイト自体を削除するところまで駆け足で紹介しました。入門レベルではありますが、入口から出口まで見渡すことで導入しやすくなれば嬉しいです。
マルチサイト関連リンク
にほんブログ村
「Webサイト構築」ランキング参加中です。ポチッと応援お願いします♪
コメント