マルチサイトのURLを移動する際に変更する場所【WordPress】

最終更新日: 公開日: 2023年02月

WordPress のマルチサイトは大変便利なものだ.

マルチサイトはホームページを多言語にしたり,全く別の商品・サービスでイメージをガラっと変えてしまいたい場合などに重宝する仕組みだが,テストサーバーで作ったものを本番に移行する際に変更箇所が複数に渡るので備忘録として残しておく.

マルチサイトの移動方法

マルチサイト URL の移動の際に変更する箇所

前提

引っ越しする本番のサイトのURLを以下のようなものだとする.

'https://www.なんちゃら.com/'
'https://www.なんちゃら.com/english'

wordpress をインストールした場所は
'https://www.なんちゃら.com/wp'
(つまり,WordPress データベーステーブルの接頭辞が wp_ の場合)

マルチサイトで日本語サイトと英語サイトを実現したといったイメージだ.

以下でプロトコルの記述の有る無しや最後のスラッシュあるなしも違いがあるので注意してほしい.
この通りでなくても動くかもしれない.いずれにしても自己責任でお願いします.

DB(MySQL)の変更方法

phpAdmin を使った方法は検索すれば出てくるので,ここでは端末(ターミナル)のコマンドラインで実行する場合の方法を説明する.
まず,DBに接続する.

mysql -u DBのユーザー名 -h DBのホスト名 -D DB名 -p

これでパスワードを聞かれるのでそのユーザーでのパスワードを入力して,MySQL に接続する.

home の url 変更

wp_options テーブルの option_name の home を変更する.

update wp_options set option_value = 'https://www.なんちゃら.com/' where option_name = 'home';

(マルチサイト)
wp_2_options テーブルの option_name の home を変更する.
マルチサイトで 3 つ以上の場合はここの数字が増えていく.

update wp_2_options set option_value = 'https://www.なんちゃら.com/english' where option_name = 'home';

site の url 変更

update wp_options set option_value = 'https://www.なんちゃら.com/wp' where option_name = 'siteurl';

(マルチサイト)
wp_2_options テーブルの option_name の siteurl
wp_sitemeta テーブルの meta_key の siteurl
を変更

update wp_2_options set option_value = 'https://www.なんちゃら.com/english' where option_name = 'siteurl';
update wp_sitemeta set meta_value = 'https://www.なんちゃら.com/wp/' where meta_key = 'siteurl';

domain の設定

(マルチサイト)
wp_blogs テーブルの domain
wp_site テーブルの domain
を設定.

update wp_blogs set domain = 'https://www.なんちゃら.com';
update wp_site set domain = 'https://www.なんちゃら.com';

source_domain の設定

この項目はプロトコル(https://)がなく,ホスト名だけとなることに注意.
(マルチサイト)
wp_usermeta テーブルの meta_key の source_domain を変更

update wp_usermeta set meta_value = 'www.なんちゃら.com' where meta_key = 'source_domain';

wp-config.php の定数を変更

wp-config.php の以下を変更.

define( 'DOMAIN_CURRENT_SITE', 'www.なんちゃら.com' );
 

Contact

ご質問等ありましたら,お手数ですが弊社の個人情報保護方針をお読み頂いた上でフォームからお願い致します.
※このページと無関係な内容のセールスはご遠慮ください.

 
   
contact
Pagetop