2014/2/21ツイートWordPressサイトの移転には、エクスポート・インポート機能を使う事ができます。この機能で対応できるのは記事とメディアのみです。WordPress設定や「リンク」、プラグインの設定などは移行する事ができないので、移転元のサイトを見ながら一つずつ設定しなくてはならず、サイトによっては大きな労力になり、また移行に漏れが生じる恐れがあります。そこで、WordPressのエクスポート・インポート機能に頼らず、記事から設定までまるごと移行する方法を試してみました。マルチサイトについて以下の方法はWordPressのマルチサイトにも対応していますが、このような条件で行っています。マルチサイトはサブディレクトリ方式です。移転元も移転先も同じサブディレクトリ名で移行します。必要なもの移転作業で必要な物をまとめてみました。移転元サイトの.htaccessファイルに設定を追加して、自分のIPアドレス以外からのアクセスを遮断します。移転元サイトのプラグインを全て停止、テーマを標準の物にする移転元サイトのプラグインを全て停止にします。停止にする際に、どのプラグインが有効化されていたかを控えておきましょう。Fourteen」などWordPress標準のテーマに変更しておきます。phpMyAdminで移転元サイトのデータをエクスポート移転元のphpMyAdminにアクセスし、データをエクスポートします。左カラムのデータベースリストの、移転元サイトのデータベース名をクリックします。エクスポートタブをクリックし、エクスポート方法の詳細をクリックします。テーブルは全選択します。コマンドを追加するにチェックを入れます。下の実行ボタンをクリックし、エクスポートファイルをダウンロードします。移転元サイトのファイルをダウンロードする移転元サイトのサーバ上のファイルを、全てダウンロードして、一つのフォルダに保存しておきます。※Macをお使いの場合、.htaccessファイルはMac上で不可視ファイルになってしまうので、あらかじめファイル名先頭のドットを消去したコピーファイルを用意しておくなどしておきましょう。これで、移転元サイト側の作業は完了です。phpMyAdminで移転先サイトにデータをインポートここからは移転先サイト側の作業になります。移転先のphpMyAdminを開き、先ほどエクスポートしたデータファイルをインポートします。インポートの際にデータベースが作成されるので、予めデータベースを作成しておく必要はありません。インポートタブをクリックし、インポートするファイルからエクスポートデータのアップロード方法を選びます。ブラウザからアップロードする場合は、ファイルを選択からPC上にあるエクスポートデータを選択します。下の実行ボタンをクリックし、データをインポートします。移転元サイトのファイルをダウンロードするでダウンロードしたファイルを、移転先サーバのWordPressを設置するディレクトリにアップロードします。.htaccessファイルを書き換える移転先のURLに合わせて、.htaccessファイルを書き換えます。WordPressRewriteBaseのところと、RewirteRuleの最後の行を書き換えます。RewriteBaseは、移転後のホームURLの、ドメイン以降の部分にします。/shop/となります。RewriteRuleの最後の行は、RewiteBaseにindex.phpを加えたものになります。[L]のようになります。マルチサイトの場合は、メインサイトのホームURLを基準にします。wp-config.phpを書き換える移転先のwp-config.phpファイルを書き換えます。この情報はホスティング先から入手してください。この情報はホスティング先から入手してください。'localhost');ユーザー名、パスワード、ホスト名を、移転先環境に合わせて書き換えます。文字列に変更してください。自動生成することもできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。文字列に変更してください。自動生成することもできます。これにより、すべてのユーザーを強制的に再ログインさせることになります。'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx');saltも新しい物を生成して書き換えます。マルチサイトの場合は、マルチサイト設定の部分も書き換えます。);$baseとPATH_CURRENT_SITEには、ホームURLのドメイン以降の部分を記述します。DOMAIN_CURRENT_SITEには、ドメインのhttp://以降の部分を記述します。データベースのサイトURLを書き換える移転先のデータベースにインポートしたデータに含まれるURLを、旧URLから新URLに書き換えます。データは通常の文字列データ以外にも、シリアライズされたデータを含んでいるため、単純な文字列置換では対応できません。DBというPHPスクリプトを使用します。DBのサイトにアクセスします。BETAは、環境によって文字化けが発生したので、今回はバージョン2.1.0をダウンロードします。ダウンロードしたzipファイルを解凍すると、searchreplacedb2.phpというファイルが展開されます。セキュリティのために、このファイル名をランダムなものにリネームします。)リネームしたファイルを、サーバのWordPressサイトのルートディレクトリにアップロードします。先ほど設置したPHPファイル名へアクセスします。submitをクリックします。detailsをクリック。Tablesで全てのテーブルを選択し、Continueをクリックします。確認ダイアログが表示されるので、OKをクリックして続けます。forには、移転元サイトのホームURLを入力します。withには、移転先サイトのホームURLを入力します。どちらも、末尾のスラッシュは入れません。stringをクリックします。確認ダイアログが表示されるので、OKをクリックして続けます。先ほど設置したPHPファイルはもう必要ありません。セキュリティ上のリスクが大きいので、すぐに削除しておきましょう。データベースのドメインとパスを書き換える(マルチサイトのみ)マルチサイトの場合、さらにドメインとパスの書き換えが必要です。こちらはphpMyAdminで行います。phpMyAdminで移転先サイトのwp_siteテーブルを開きます。こちらはメインサイトのドメイン・パスになります。編集ボタンをクリックし、ドメインとパスを書き換えます。ドメインはhttp://以降、パスはスラッシュで始まりスラッシュで終わります。以上のように書き換えます。次に、wp_blogsテーブルを開きます。こちらはメインサイトとサブサイト全ての情報です。先ほどと同様に、ドメインとパスを全て書き換えます。このように書き換えたら完了です。プラグインとテーマを元に戻して完了!ここまででほぼ完了です。移転先サイトのログインURLにアクセスしてみてください。アクセスして無事にログインできれば、あとはダッシュボードからテーマファイルを元のものに戻し、必要なプラグインを有効化しましょう。あとはホームページを開き、サイト内を一巡して問題なければ完了です。お疲れさまでした〜成功のあかつきにはバックアップもね!ここから新天地でのサイト運営が始まります。バックアップを忘れずに取っておきましょう。2にNginx+MySQL+PHP+WordPressをインストールしてマルチサイトをコピーしてみた。2013年12月カテゴリーIoTWordPressCSSJavascriptTIPSカスタム投稿タイプテーマ作成の基礎テンプレートプラグイン設置メモこのサイトについて主にWordPressのTIPSを書いてます。現在、記事を増やしながら推敲も繰り返しているため、記事の内容は書き換えられる場合があります。ご意見やご指摘はメッセージをいただけると、とても助かります。リンクについて当サイトの各ページへのリンクはフリーです。記事の内容を引用する場合には、該当記事へのリンクをお願いします。Permalinks記事の感想やご指摘など、メッセージをいただければ幸いです。利用規約このメッセージを送信するΔmoriコツコツとウェブ制作・開発の仕事をしてます。WordPressでのサイト制作やカスタマイズ案件などが中心です。小さなお仕事から、お気軽にご相談ください。Posting....。