これだけは必須!WordPressのサイト引越しの際に必要になった作業まとめ
あまりつまずくことはないだろうとは思ってましたが、WordPressで作成したサイトを移転した際に、独特の必要変更箇所がありつまずきかけたのでメモとして残しておきます。全て出尽くした情報ではありますが自分にとって必要な情報として再構築しておきます。WordPressを触り始めた人、プラグイン等を使わずに移転する人向けの記事になるかと思います。
1.データベースまわり
(1)データベースのエクスポート&インポート
(2)その他必要となる作業(←ここ大事1)
2.環境設定まわり wp-config.phpの編集
3.補足作業(←ここ大事2)
1.データベースまわり
(1)データベースのエクスポート&インポート
当然発生する作業ですね。データベースのテーブル内に、これまでの投稿記事や設定内容など様々なデータが入っているので、これらをphpmyadminなどのデータベース管理ツールを使用して引越しをします。phpmyadminの操作に慣れてない方は下記サイトあたりがシンプルにphpmyadminのインポート&エクスポートだけにしぼって書かれているので見やすいのではないでしょうか。
http://www.seotemplate.biz/blog/wordpress-tips/3741/
(2)その他必要となる作業(←ここ大事1)
データベースのテーブルに格納されている情報の一部はドメインに関わるものなので、ドメインが新しく変わる場合はテーブル内の値の更新も必要です。そこで下記のSQLを実行する必要が生じます。この作業により、投稿記事中で旧サイト内を参照しているリンクなども、一括で全部新サイトへ貼り直します。
下記は「http://oldsite.com」から「http://newsite.com」へ変わる場合の例です。
UPDATE wp_options SET option_value = replace(option_value, 'http://oldsite.com/', 'http://newsite.com/') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET guid = replace(guid, 'http://oldsite.com/','http://newsite.com/'); UPDATE wp_posts SET post_content = replace(post_content, 'http://oldsite.com/', 'http://newsite.com/'); UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://oldsite.com/','http://newsite.com/');
上記update作業はここを参考に行いました。
websae.net
2.環境設定まわり wp-config.phpの編集
(1)データベース情報の変更
この辺りは当たり前の作業ですね。説明は省略します。
(2)テーブル接頭辞の変更
これも新環境でのテーブル接頭辞に書き換えます。
3.補足作業(←ここ大事2)
だいたい以上でいけそうかなと思いましたが、私の場合はこの作業だけでは正常にページが表示されませんでした。サイトにアクセスすると、
このページにアクセスするための十分なアクセス権がありません。
これはテーブル接頭辞を変更した場合にのみ出ます。テーブルの中にも実は接頭辞にかかわる値を持っていたということです。なのでテーブル接頭辞を変更した場合は、それに伴うテーブルデータの変更が必要で、具体的には下記の作業が必要になります。
たとえばテーブル接頭辞を「wp_」から「wp01_」と変更した場合は下記のようになります。
現状のテーブル名 | フィールド名 | 変更前の値 | 変更後の値 |
---|---|---|---|
wp01_options | option_name | wp_user_roles | wp01_user_roles |
wp01_usermeta | meta_key | wp_capabilities | wp01_capabilities |
wp01_usermeta | meta_key | wp_user_level | wp01_user_level |
wp01_usermeta | meta_key | wp_dashboard_quick_press_last_post_id | wp01_dashboard_quick_press_last_post_id |
wp01_usermeta | meta_key | wp_user-settings | wp01_user-settings |
wp01_usermeta | meta_key | wp_user-settings-time | wp01_user-settings-time |
以上、「引っ越し時にテーブルのどこのデータを変更する必要があるか」というのは、WordPressの仕様を知っておかないとわからないことですよね。そして、「ここ大事」と記した2つの部分はどちらもテーブルデータ更新の話だったわけですが、これらがまとめて1つの記事として残されているところを見つけることができなかったので、今回あえてメモとして残した次第でした。