【wordpress】webサイトを複製(引っ越し)する方法をかなり詳しく ※さくらのレンタルサーバ

いろいろな理由で作成したwebサイトを複製、引越ししたいと考えることがあると思います。
お客様のwebサイトを作成後、別に関連webサイトを作る際に必要になりました。
今回はプラグインを使わない方法で行っています。

概要、条件

さくらインターネットのレンタルサーバは、スタンダードプラン(容量100GB、月額515円、データベースは20個まで)を使っています。

最初に作成したwebサイトは、”元webサイト”、今回新たに作成するwebサイトは”複製webサイト”と呼ぶことにします。

元webサイトと複製webサイトは同じサーバにあり、データベースは別としました。
また、それぞれのデータベースはwordpress専用で、他に使用していないことを条件としています。

ファイル転送はFFFTPを使っています。これの使い方はわかっているものとして進めます。
わからない方はこちらを参照ください。

簡単に言えば、元webサイトのファイルとデータベースをコピーするだけです。
作業時間は40分くらいです。実施は自己責任でお願いします。

wordpressのwebサイトを複製(引っ越し)する手順

1)元webサイトのファイルをコピーする

FFFTPで元webサイトのインストール先ディレクトリ(フォルダ)を開きます。
例えば僕の環境の場合、「blog」というディレクトリ(フォルダ)にwordpressがインストールされているので、それを自分のPCにドラッグ&ドロップでコピーします。

自分のPC側のフォルダ名はなんでも良いです。
僕は”元ブログファイル”としています。

たくさんのファイルがあるため、時間がかかります。
僕の場合は2,000ファイルくらい。10分弱かかりました。

ファイルの数はインストールしたプラグインやテーマ等の数によって変わります。
また、ネット環境で転送速度も変わります。

2)元webサイトのMySQLデータベースをエクスポートする

まずはさくらインターネットのコントロールパネルにログインしてください。

ログインしたら、左メニュー中段の アプリケーションの設定>データベースの設定 をクリックします。

画面が切り替わったら右列中段にある「管理ツールログイン」をクリックします。

別のタブでログイン画面が表示されますので、ログインしてください。

ユーザ名は、前の画面(「管理ツールログイン」をクリックした画面)に記載されています。
パスワードは、ご自身で決めたパスワードです。わからない場合は、前の画面(「管理ツールログイン」をクリックした画面)で変更可能です。
サーバの選択は、そのままでOKです。(すでに選択されていますよね?)

※わかっている方は、コントロールパネルを経ずに直接この画面にアクセスしてもよいです。

ログインすると、以下のような画面が表示されます。
左側にこれまで作成したデータベースが表示されますので、該当するデータベースをクリックします。

※データベースが1つしかない場合は、選択済み画面になっているかもしれません。その場合は次に進んでください。

画面が切り替わったら、

① 右画面上部の「エクスポート」をクリックしてください。
② 全選択をクリックします。もしかしたらすでに選択されているかも
③ DROP TABLE / VIEW / PROCEDURE / FUNCTION / EVENT を追加 にチェックを入れます。このチェックの追加については以下を参照。

通常は、既存のテーブルがあると例えそれが空でもデータを入れる事ができない場合がある。(ユニークなキーが被ったりすると、データが挿入できずにエラーになる)
そのため、既存のテーブル等があったら一度、テーブルを削除(DROP) して、新規にテーブルを作成した後、データを挿入するというオプション。

エンジニアの何でもメモ帳さまより引用

④ zip形式にチェックを入れてください。情報が少なければそのままでもよいですが、多いとダウンロードに時間がかかります。少しでも短くするために圧縮するためのチェックです。
⑤ 実行ボタンをクリックします。とりあえず任意の場所(デスクトップ等でもOK)に保存しておいてください。

3)複製webサイト用のデータベースを作成する

2)の要領でコントロールパネルにログインし、左メニュー中段の「データベースの設定」をクリックします。

画面が切り替わったら、データベースの新規作成をクリック。

作成画面について、
データベース名は、任意で決めてください。(画面は、test001と入れています。)
また、文字コードはutf8です。
「データベースを作成する」ボタンをクリックしてください。

これでデータベースの作成は完了です。

4)wp-config.phpの中身を書き換える

1)でダウンロードしたファイルを見て下さい。

その中に「wp-config.php」というファイルがありますので、テキストエディタで以下のように編集します。

1つ目の項目は必ず変更が必要です。
2~4つ目の項目は、同じサーバ内に複製を作るのであれば変更不要です。
違うサーバに複製を作る際は環境に合わせて修正してください。

5)サーバ内に任意のディレクトリ(フォルダ)を作ってアップロードする

(1)でFFFTPを使いダウンロードしましたが、今度は任意のディレクトリを作り、(1)でダウンロードしたファイル群をアップロードします。

ディレクトリ(フォルダ)の名前はなんでも良いですが、個人的にはデータベースの名前と合わせておくとわかりやすいと思っています。

今回の場合、blogというディレクトリと同階層に「test001」というディレクトリを作成し、(1)でダウンロードしたファイル群(wp-config.phpのみ編集済み)をアップロードします。

僕の場合は2,000ファイル程度で10分弱かかりました。

6)複製webサイト用のデータベースに、元webサイトのデータをインポートする

(2)の要領で管理ツールログインからphpMyadminにログインします。

ログインすると、さきほど作成したデータベースが左側に表示されているはずです。
クリックして選択してください。(該当部分が見にくくてごめんなさい。)

さきほど作成したデータベースをクリックして選択し、右側上部のインポートタブを選択します。
「ファイルを選択」ボタンから、(2)でエクスポートしたファイルを選択します。zipのままでOKです。選択したら実行ボタンをクリックします。

※少し時間がかかるかもしれません。

「インポートするファイル」という項目名の下でクルクル(下図の矢印部分)していたら実行中なので、そっと待ちます。

無事にインポートが終わるとこのように表示されます。

7)複製webサイト用のデータベースを書き換える(1か所)

画面上部の構造タブをクリックします。
「テーブル」という列にたくさんのテーブル名が並んでるかと思いますが、その中に「○○○○options」というテーブルがあるので、「表示アイコン」をクリックします。

たぶん1番上に表示される「siteurl」の編集アイコンをクリックします。

元webサイトのURLが入力されていると思いますので、複製webサイトのURLに修正し、「実行する」ボタンをクリックします。

このURLは(5)で任意のディレクトリ(フォルダ)を作った場所に関連しますのでご注意ください。

8)管理画面にログインしてみる

ログイン画面にアクセスしてみましょう。
(7)で指定したURLの後ろにwp-login.phpを追加してアクセスしてください。
http://〇〇〇.sakura.ne.jp/test001/wp-login.php こんな感じです。

9)wordpressでの設定変更(1か所)

管理画面にログインしたら、設定>一般>サイトアドレス (URL)が、元webサイトのアドレスになっていると思います。こちらも修正します。

あとがき

いかがでしょうか。
一言で言えば、元webサイトのファイルとデータベースをコピーするだけです。
そこまで難しい作業ではないと思いますが、普段触らないデータベース回りをさわるので混乱も多いかと思います。

作業の参考になれば幸いです。
よりよいwordpressライフを!

追記

元webサイトの記事内に自サイトへのリンクが絶対パスで指定されている場合、修正する必要があります。
「Search Regex」プラグインを使うと、簡単に一括で置換できます。

また、(2)でエクスポートしたsqlファイルに記載されている元webサイトのURL( http://〇〇〇.sakura.ne.jp/blog )を複製webサイトのURL( http://〇〇〇.sakura.ne.jp/test001 )に置換してから(6)インポートしたところ、テーマオプションから設定する内容の一部が標準に戻ってました。テーマによっては手直しが必要かもしれません。

ちなみに、この時使用していたテーマは、 BizVektorです。

参考にしたwebサイト

ありがとうございました。