BizVektorテーマを利用している場合に、WordPressサイトでドメインを変更するときの注意点です。
他のテーマでもいえることですが、テーマ独自のオプションがあって、画像やリンクなどのURLを入れている場合、単純にURLだけSQLで変換してしまうと、オプションが初期化されたり動作がおかしくなることがあります。
BizVektorテーマの場合、wp_optionsテーブル内のoption_name: biz_vektor_theme_optionsのレコードにオプション情報が次のような形で記録されています。
1 2 3 4 5 |
... a:140:{s:12:"theme_layout";s:15:"content-sidebar";s:13:"postLabelName";s:9:"ブログ";s:13:"infoLabelName";s:12:"お知らせ";s:12:"rssLabelName";s:12:"Blog entries";s:11:"theme_style";s:6:"calmly"; ... s:6:"gaType";s:11:"gaType_both";s:20:"topEntryTitleDisplay";N;s:17:"topSideBarDisplay";N;s:13:"top3PrDisplay";N;s:8:"pr1_link";s:31:"http://www.old-domain.com/link/";s:9:"pr1_image";s:70:"http://www.old-domain.com/wp-content/uploads/2014/04/top_photos_01.jpg";s:11:"pr1_image_s";s:73:"http://www.old-domain.com/wp-content/uploads/2014/04/top_photos_s_011.jpg"; ... |
「a:140:」が項目の数を表しており、「s:12:”theme_layout”;」がそれぞれの項目で、12バイトであることを表しています。
URLが含まれている項目、たとえば「s:31:”http://www.old-domain.com/link/”」を単純に別のURL「s:31:”http://www.changed-domain.com/link/”」に変換してしまうと、バイト数表記と実際のバイト数が異なってしまい、おかしな動作になります。
これを防ぐには、option_name: biz_vektor_theme_optionsのレコードだけはSQL文での変換をせずに、管理画面から直接変換するのが最も簡単でしょう。SQL文での変換をしてから、バイト数表記をすべて修正するという方法もありますが、一個でも間違ってしまうと、おかしな動作になりますので、非現実的と思われます。
これ以外のテーブルはSQL文による変換で問題ありませんので、変換します。
▼SQL文
1 |
UPDATE wp_options SET option_value=REPLACE(option_value,"www.old-domain.com","www.new-domain.com") where option_name in ('widget_text', 'sm_status'); |