【WordPress】ローカル開発からサーバーへ移行に便利な「Search Replace DB」の使い方

プロモーションが含まれています

【WordPress】ローカル開発からサーバーへ移行に便利な「Search Replace DB」の使い方

ローカルで開発したWordPressを、サーバーに移行する時に便利な「WordPress Search Replace DB」の使い方を簡単にまとめました。

WordPress関連記事

関連記事をもっとみる

ローカルのDBをエクスポートする

phpMyAdminから、移行するWordPressが使用しているDBを選択し、「エクスポート」タブから、
「可能なオプションをすべて表示」をチェックし、テーブルが全選択されてることを確認する。

「生成オプション」の「DROP TABLE/VIEW/PROCEDURE/FUNCTION/EVENT/TRIGGERコマンドを追加する」にチェックを入れ、「実行」をクリックすると、ローカル環境のDBがエクスポートされます。

サーバーにDBを作成しインポートする

サーバーの管理画面上から、移行するWordPressが使用するDBを作成します。
(DBの作成が必要な場合のみ)
ローカルのDBと作成するDBの名前を合わせておくとスムーズです。
各サーバーで操作方法が違うと思うので、説明は省きます。

phpMyAdminから、エクスポートしたSQLファイルをインポートする。

wp-config.phpを編集し、サーバーの環境に合わせる

サーバーのDBにWordPressが接続できるように環境設定を変更します。

データベース名:サーバーに新規作成したDB名
ユーザー名:サーバーで利用するユーザー名
パスワード:サーバーに新規作成したパスワード
ホスト名:サーバーで利用するデータベースのホスト名

詳細は、各サーバーのマニュアルを参照してください。

WordPress本体をサーバーへアップロードする

FTPでサーバーへWordPress本体を設置したい階層へアップロードします。
ルート直下が一般的ですかね。

この状態でWordPressにアクセスしても、正しく表示されません。
なぜならDBの情報がローカルで作成したままになっているから。

これを一括で、サーバー環境に置換します。

DBの置換は「Search Replace DB」をダウンロードして使う

Search Replace DBを使うと検索/置換する際にデータベースに保存されたシリアライズされたデータも置換することができます。

Githubから、Search Replace DBをダウンロードしましょう。

GitHub - interconnectit/Search-Replace-DB: This script was made to aid the process of migrating PHP and MySQL based websites. Works with most common CMSes.
This script was made to aid the process of migrating PHP and MySQL based websites. Works with most common CMSes. - GitHub - interconnectit/Search-Replace-DB: Th...

ダウンロードしたzipを展開した、「Search-Replace-DB-master」というディレクトリを使用します。
これを、wp-adminや、wp-content、wp-includesのディレクトリと同じ階層にアップロードします。

ブラウザで「https://「WordPressのルート」/Search-Replace-DB-master/」にアクセスして下記の画面が表示されれば、インストールは完了です。
例)https://example.com/Search-Replace-DB-master/

「Search Replace DB」の使い方

万が一に備えて移行元のデータをバックアップします。

使い方の流れは、下記のようになります。
1.Database Detailsに、DB情報を入力して接続可能かを確認する。
2.SearchReplaceで、置換するURLを指定する。
3.Do a safe test runで、置換結果のシミュレーションする。
4.Search and Replaceで、置換を実行する。
5.delete meで、スクリプトの削除をする。

Database Detailsに、DB情報を入力して接続可能かを確認する

以前はDB情報が自動で取得され、入力された状態になっていましたが、今は手動でDB情報を入力する必要があります。

database name:データベース名
username:データベースのユーザ名
pass:データベースのパスワード
host:データベースのホスト名
port:ポート番号(省略可)

上記の項目を入力したら「Test Connection」をクリックしてDBに接続できるかを確認します。

緑色で「Success. You are connected.」と表示されればDBに接続成功です。

SearchReplaceで、置換するURLを指定する

SearchReplace の「replace」には置換対象のURLを入力し、「with」には置換後のURLを入力します。

ローカルからの置換なので、「replace」にはローカルのURLを入力し、「with」には移行先サーバーの URLを入力します。

入力例
「replace」:http://localhost/wp/
「with」:https://example.com/wp/

「+ add more search terms」をクリックして置換対象を追加することができます。

Do a safe test runで、置換結果のシミュレーションする

「Do a safe test run」をクリックすると、実際に置換を実行せずに、シミュレーションすることができます。

変更があったテーブルには「view changes」というリンクが表示され、クリックするとどのような置換が実行されるのかを、確認することができます。

Search and Replaceで、置換を実行する

シミュレーション結果を確認し、問題ないようならば「Search and Replace」で置換を実行します。

するとアラートが表示されるので確認します。
「本当に置換の実行の準備は整っていますか? データベースのバックアップを取ってください!」

問題なければ「OK」をクリックで置換が実行されます。
ボタンを押しても、5秒間だけ「Stop」ボタンを押すことで、置換を中止することができます。

delete meで、Search Replace DBを削除する

置換が完了したら「delete me」で、Search Replace DBを削除します。
クリックするとアラートが表示されるので「OK」をクリックします。
これで削除できましたが、念の為「Search-Replace-DB-master」ディレクトリも削除しておきましょう。

以下は「delete me」ボタンをクリックしてサーバーからスクリプトを削除した後のフォルダの内容。スクリプトを削除後、再度置換を行うには 「Search-Replace-DB-master」を再度配置します。

念の為、「Search-Replace-DB-master」ディレクトリも削除しておきます。

これで、ローカルで開発したWordPressを、サーバーに移行することができました。

サーバー移行後にURLを統一する

サイトを公開するということは、サーバー移行後にURLを統一する必要があります。
ここで一緒にSSL対応もさせておくと楽ですね!

SSLに対応させる為に、「.htaccess」を使って、httpのURLにアクセスされたときに、自動でhttpsのURLに301リダイレクトする記述と、URLに「www」のあり・なし統一する記述をまとめたので、詳細は下記で確認してください。

.htaccessでhttpにアクセスされたときに自動でhttpsに「www」のあり・なし統一して301リダイレクトする
SSLに対応させる為に、「.htaccess」を使って、httpのURLにアクセスされたときに、自動でhttpsのURLに301リダイレクトする記述と、URLに「www」のあり・なし統一する記述をまとめました。 ※作業前に...

コメント

タイトルとURLをコピーしました