wordpress マルチサイト ドメイン変更手順

予定があるので備忘録。

マルチサイト化したwordpressの、ドメインを変更したら以下の手順で変更する。
ローカル環境でのテストの記録。

今回は本サイトのはいかに、/test/というマルチサイトを持ち、
そしてドメインを、localhost -> 192.168.24.55へ変更する想定。

※バックアップを忘れずに

■p-config.php

define(‘DOMAIN_CURRENT_SITE’, ‘localhost’);

define(‘DOMAIN_CURRENT_SITE’, ‘192.168.24.55’);

■データベース

まず、localhost も文字列が入っているテーブルを検索。
変更が必要そうなものは、以下がヒットした。

wp_2_options
wp_options
wp_blogs
wp_site
wp_sitemeta

1.wp_opstions

各サイトのwp_options table を変更。
マルチサイトが増えるに連れて、
wp_n_optionsとなっているはず。

// home site
UPDATE wp_options SET option_value = 'http://192.168.24.55' WHERE option_name = 'home';

// multi site 2
UPDATE wp_2_options SET option_value = 'http://192.168.24.55/test' WHERE option_name = 'siteurl';

2. wp_blogs
次に、wp_blogs table.
domain というフィールドがあるので、それを変更する。

UPDATE  `wp_multi`.`wp_blogs` SET  `domain` =  '192.168.24.55' WHERE  `wp_blogs`.`blog_id` =1;
UPDATE  `wp_multi`.`wp_blogs` SET  `domain` =  '192.168.24.55' WHERE  `wp_blogs`.`blog_id` =2;

試しにホームの管理画面にはいってみると、この状態でもログイン出来た。
マルチサイトの管理画面も同じくログイン可。
だが、参加サイトに表示がされていないようだ。

3. wp_site

UPDATE  `wp_multi`.`wp_site` SET  `domain` =  '192.168.24.55' WHERE  `wp_site`.`id` =1;

これでネットワーク管理画面のサイト一覧をみてみると、他のサイトも表示されてる!
もしかして、変えなくても良かったのかな?

4. wp_sitemeta

取り敢えずちゃんと動作している模様。
ここは変えなくてもいいかも知れないが、一応変えておく。
前のままの意味も無いからね。

UPDATE  `wp_multi`.`wp_sitemeta` SET  `meta_value` =  'http://192.168.24.55/nara/wp_multi/' WHERE  `wp_sitemeta`.`meta_id` =14;

※こちらにも同じ事が書いていました。
参考:http://seihiguchi.com/2012/10/moving-wordpress-multisite/

ということで、結構簡単に変更は可能なよう。
ただ、数が増えると面倒だな、、と少し思います。