WordPressのインストール先をサブディレクトリからサブドメインへ設定変更した記録

WordPressのインストール先を”https://dmain/blog/”から”https://blog.dmain/”に設定変更する機会がありましたので、その記録を残しておきます。
※WordPressファイルを配置しているディレクトリに変更はありません。
※サーバーはXserverです。

サブドメインの手続き

Xserverの管理画面でサブドメインの手続きを行います。
※サブドメインの反映まで1時間程度かかりました。

WordPressの管理画面でURLの設定変更

WordPressの管理画面から、「設定」→「一般」と進み、「WordPressアドレス」と「サイトアドレス」に新規のサブドメインを入力する。

ファイル内のURLの書き換え

WordPressをインストールしているサーバーにSSHで接続し、grepコマンド等でURLが記載されている箇所を見つけて書き換える。

(grepコマンド例)

DB内のURLの書き換え

DBのレコードについてもURLを書き換える必要がある。SQL等で直接URLを書き換えるとデータに不整合が出るらしいので、専用のツールやプラグインを利用する。

ツールの”Database Search and Replace Script in PHP”の利用

WordPressのドメインを変更する際に用いられるDBの書き換えツール。使い方は以下の通り。

  1. 公式サイト(https://interconnectit.com/products/search-and-replace-for-wordpress-databases/)にアクセスし、必要項目にチェックを入れて「submit」ボタンをクリック。
  2. メールが届くので、リンクをクリックしてツールをダウンロード。
  3. zipファイルを展開し、SCP等でWordPressをインストールしたディレクトリに配置。
  4. ブラウザで”http://blog.domain/Search-Replace-DB-master”にアクセス。
  5. 必要項目を入力してDBの書き換え。
    ※参考URL:https://junjun-web.net/tool/search-replace-db-master/

WordPressプラグインの”Regex”の利用

上記の”Database Search and Replace Script in PHP”のみだと、記事内の画像のパス等が変換されていなかった。WordPressプラグインの”Regex”を利用して、記事内のURLを一括置換した。

WordPressの管理画面からテーマで用いる画像パスの変更

上記の “Database Search and Replace Script in PHP”と”Regex”を利用してURLを置換してもなお、以前のURLが残っていた。色々調査してみると、テーマで用いる画像のパスだった。僕の場合はテーマに”Cocoon”を用いていたので、WordPressの管理画面から「Cocoon設定」をクリックして1つずつ設定変更した。

 

以上です。もっとスマートなやり方がありそうですが、参考になれば幸いです。

コメント