WordPressで運営中のサイトのドメイン変更手順

私は4年前くらいにWordPressでブログを始めたのですが、その後2年間ほど放置してしまっていました。しかし、『一念発起してやり直そう!』と思い、WordPressで作ったブログをドメインごと移転する対応を試みました。

結果としては、『時期到来』としてブログを一から作り直すという道を選んだのですが、試行錯誤しながらドメインの変更を行いましたので、その際の手順をご紹介したいと思います。

WordPressで作られたサイトやブログの移転をしたいと考えている方の参考になれば幸いです。

ドメイン変更にあたってやったこと

もとのサイトでは、サブドメインにブログを構築して、WordPress自体を分けて立てていました。

そのため、サイトのファイルやDBの中身を移行させるなどの大変な作業はなかったのですが、それでもやることは結構あります。

ドメイン移行設定作業

WordPress一般設定

phpMyAdminなどを使ってドメイン設定後にやっても良いのですが、パパッと簡単にやってしまおうと考えました。

ということで、まずはWordPressの管理画面の一般設定で「WordPressアドレス」と「サイトアドレス」を変えてしまいます。

WordPress一般設定の変更点です

レンタルサーバでの設定の仕方次第では、『WordPressアドレス』も変えてしまうとうまくアクセスできない場合もありますので、ご注意ください。

ちなみに、この設定を変更した瞬間からドメインの切り替えが完了するまでは、WordPressにアクセスが一切できなくなりますのでご注意ください。(設定ボタンを押したら、そこから応答が返ってこなくなります!)

ドメイン設定

WebサーバとしてApacheが動いているサーバであれば、新しいドメインのAレコードにサーバのIPアドレスを紐付けて設定すれば良いです。私が使っているのはレンタルサーバなので、ドメインの紐付け変更だけ行います。レンタルサーバの場合は、コントロールパネルから設定できるところがほとんどでしょう。

ロリポップの独自ドメイン設定の文言

ちなみにロリポップでは、独自ドメインの設定に1時間ほど掛かるようです。私のパソコンからは、新しいドメインのIPアドレスは、1分もしないうちに引けるようになりました。(※Windowsでは、コマンドプロンプトでnslookupコマンドを使います)

独自ドメインとルートディレクトリの紐付けも同時に行うので、そこに時間が掛かりましたが、それでも15分ほどで完了しました。

301リダイレクト設定

Googleとしては、ドメイン移行する際には301リダイレクトを推奨しています。基本的にこの301リダイレクトをしないと、後述するGoogle Search Consoleでのドメイン変更手続きができませんので注意です!

WebサーバとしてApacheが動いていて、かつmod_rewriteが使える環境であれば、最もお手軽な方法は『.htaccess』を使った対応です。Apacheは、HTTPアクセスがあったタイミングでこの.htaccessに書かれた通りの動きをしてくれるので、簡単に301リダイレクトをしてくれます。

後述しますが、パーマリンクを今回いじっています。そういう場合は、ページ毎にリダイレクト設定を入れる必要があります。単純にドメインだけ変更する場合は、下記のようにまるっと301リダイレクトさせるような設定で構いません。

RewriteEngine On
RewriteCond %{http_host} ^blog.info-architecture.jp
RewriteRule ^(.*) http://newdomain.com/$1 [R=301,L]

この記述内容をご利用のURLに変更の上、元のドメインで使っていたドキュメントルートに設置します。WordPressを使ってパーマリンク設定していると、既に.htaccessが作られていると思うので上書きすればOKです。

【注意!】
パーマリンクを変更した結果、ここで私は大きな失敗をしました。パーマリンクを変更する際は、ページ毎に301リダイレクトさせないとダメです。そうしないと、ドメイン移転先で404エラーになり、ページが存在しないダメサイト認定をされてしまいます。

Google Search Consoleでアドレス変更

Google Search Console(旧Googleウェブマスターツール)を使って、ドメインが変更した場合に行うアドレス変更の設定を行います。

右上の歯車に「アドレス変更」というメニューがありますので、これをクリックします。すると、下記のように4つの手順を行えという指示が表示されますので、それぞれの項目の対応を実施してドメイン変更を行います。

Google Search Consoleでのアドレス変更手順

ここではまだプロパティを作っていなかったので、新しく作ることにします。

Google Search Consoleプロパティ追加

所有権の確認は、お手軽なHTMLファイルアップロードで対応します。
※これで進めたら、正常にプロパティが作成されませんでしたので、ホーム画面でプロパティの設定をし直しました。

新しいドメインのプロパティが作成できると、残りの作業はあと少しです。既に301リダイレクトの設定をしていますので、2番目は自動で確認が行われます。

Google Search Consoleアドレス変更の4つのステップ

3番目は、確認ボタンを押して問題ないことのチェックができればOKです。そこまで完了したら、最後の4番目「アドレス変更のリクエストを送信する」の送信ボタンをクリックして完了です。

WordPress設定の微修正

Googleにドメイン変更の意志が伝われば終わり・・・と思いきや、まだ作業は残っています。もともとWordPressで使っているテーマや、挿入している画像や内部リンクは旧ドメインを指していることがあるので、この辺の修正をしないといけません。

テーマ設定の修正

時機到来では、テーマに『Simplicity』を使っていたのですが、なんかメニューのプルダウンが表示されない・・・。HTMLソースを見てみると、スキンの参照が旧ドメインを指していたので、カスタマイザーでスキンを指定し直しました。(スキンの設定はブランクになっていました)

ヘッダー画像の修正

テーマのカスタマイザーで設定している画像類は、指定し直さないといけません。今はヘッダー画像を設定していたので、それを指定し直しました。ロゴやfaviconを設定している場合は、同様にこれらも指定し直さないといけません。

画像リンクや内部リンクの修正

画像を投稿に差し込んでいたり、関連記事として手動でリンクを設定している場合、WordPressの一般設定でサイトアドレス(URL)を変更しても、そのまま旧ドメインを指したままになってしまいます。

ただ、旧ドメインは301リダイレクトしているので、画像は問題なく表示されるんですよね。この辺気付きにくいと思います。Broken Link Checkerにも引っかからないので、ちょっとした落とし穴ですね。

Search Regexの設定画面

そこで私は『Search Regex』というプラグインを使い、特定の文字列を置換することを行いました。ここでは、旧ドメインを検索パターンとして設定し、置き換えパターンは新ドメインにします。「Search」ボタンを押して対象の箇所を確認した後で、「Replace」を押します。そこで置き換わった箇所のリンクが正常に表示されるか、直叩きして試してみましょう。問題なさそうであれば、「Replace&Save」ボタンを押して、旧ドメインのリンクを新ドメインに書き換え完了させます。

これで一通りドメイン変更の作業が完了しました。これまでの作業は、1時間もあれば行えますので、なるべくアクセスの少ない夜中にパパッとやるのが影響が少なくてよいでしょう。




ドメイン変更と同時に変えたこと

パーマリンクの変更

【注意!】
サイト移転の際に、ドメイン変更だけでなく、ドメイン移行のパーマリンクを変えることは私としては推奨しません!何も対策しないと、404エラーが大量に出てしまいます。
それでも変えたい場合は、新サイト側でページ毎に適切に301リダイレクトされるように、設定が必要です。

ブログを再構築している中で、カテゴリの入れ替えをしたいと思ったのですが、「あっ、パーマリンクにカテゴリスラッグ入れてたわ・・・」となり、そのままにしていました。

パーマリンク設定のカスタム構造Before

カスタム構造で、”/%category%/%postname%.html”としていました。

“%category%”は、カテゴリスラッグが入ります。これがあるために、カテゴリを入れ替えたりカテゴリ名を変えようとすると、パーマリンクも一緒に変わってしまいます。そうすると、ソーシャルブックマークされていたものが全てリセットされ、ページへの直リンクがエラーになってしまいます。このせいで、容易にカテゴリの移し替えができませんでした。

また、”%postname%”は設定した投稿名ですが、これに”.html”を付けていました。かつて、Googlebotは動的コンテンツよりも静的コンテンツの方が評価が高いという説があったので、静的コンテンツに見えるように”.html”を付けていたのですが、もはやこの対応は有効ではなくなりました。

上記2つを踏まえ、

  • カテゴリに左右されないパーマリンクにする
  • そしてカテゴリ名を省いてURLを短くする
  • 余計な.htmlを付けてURLを無駄に長くしない

ために、下記のように変更しました。

パーマリンク設定のカスタム構造After

シンプルに、”http://ドメイン/%postname%” としました。最後は”/”で閉じていません。”/”で閉じると、個人的にカテゴリっぽく見えてしまうので、気持ち悪かったからです。これは合ってもなくても良いと思います。

インターネット上で検索していると、パーマリンクの推奨設定は色々なサイトで語られていますが、私としてはこれが最適解だと考えます。カテゴリスラッグを入れるとSEO的にも何のページなのか分かりやすいという主張もありますが、投稿名にカテゴリと同じワードを入れておけば良い話なので、何ら問題ないと思います。

※中には”%post_id%”が良いと書かれているサイトもありましたが、数字だけや日付のパーマリンクは私は推奨しません。”%post_id%”は、投稿時の手軽さがありますが、SEO的に何の価値もありませんので、避けるべきです。

ちなみに、今回設定したこのパーマリンクを推奨しているサイトさんは結構ありました。

次は「ドメイン/記事タイトル」という設定です。ちなみに私はこの設定を最もおすすめしています。
この設定だと「ドメイン/カテゴリ/記事タイトル」ほどではありませんが、URLをパッと見ただけでどんな内容か知ることができます。
もちろんGoogleからの評価も良いです。

引用元 : パーマリンクでSEO効果を最大にする3パターン!WordPress設定

カスタム構造で「/%postname%」を入れています。
こうすることで、記事のパーマリンクを記事投稿時に設定することができます。

カスタム構造でカテゴリー(%category%)の追加を推奨している方もいますが、カテゴリを変更した場合、URLが変わることになるので私はおすすめしません。

引用元 : [WP]パーマリンクはどう設定すべき?私の考える最適解はこれだ!

Google Analyticsを設定

Google Analyticsでは、アカウント内でプロパティを設けていますので、そのプロパティ内でドメインの変更が可能です。ただ、私の場合はアカウントも変えてしまいたかったので、新たに作って設定しなおすことにしました。通常ドメイン移転させる場合は、継続した既存プロパティを使うのが良いのではないでしょうか。

Google Search Consoleをもう一度操作

新しいプロパティでsitemap.xmlを送信していなかったので、送信処理を行いました。併せて、パーマリンクの見直しを行いましたので、念のためにFetch as Googleを行っておきます。

Google Search ConsoleでFetch As Googleを行います。

「インデックスに送信」ボタンが現れたら、クリックします。

indexの送信をします。

送信方法の選択が出ますので、ここは2つめの「このURLと直接リンクをクロールする」を選択します。これでドメイントップを基点にクローリングを行ってもらえます。



ドメイン移転にあたっての注意点

ドメイン移行期間

これはサイトの保有している記事数や、Googleにインデックスされている数などにも影響するような気がしますが、明確にどれくらい掛るかということは明かされていません。

私個人の感覚では、1~2か月くらいの期間が掛かる覚悟をしておいた方がよいでしょう。

ドメイン移行中はインデックスされない

ドメイン移行作業が完了したら、すぐに通常運用したいですよね。ただ、Googleは新ドメインを移転先としてすぐには認識しないため、新しくコンテンツを上げてもインデックスされません。もし2か月移転に掛かるとしたら、その間に上げたコンテンツは一つもインデックスされないのです。

これのついてのリスクがあります。もしドメイン中にコンテンツをパクられて他のサイトにアップされてしまうと、パクった方がオリジナル記事としてGoogleに認識される可能性があります。ただ、上げたらすぐにシェアされるようなサイトの記事であれば、被リンクも増えていきますので大丈夫かもしれません。

残念ながらこの辺の影響は明確に分かっていませんが、個人的にはリスクだと認識してもらった方が良いと思います。

404エラーが出やすい

SEO関連の設定によるのですが、実は意図しないコンテンツやアーカイブ、画像がGoogleにインデックスされている可能性があります。そうした場合、ドメイン移転先で適切な301リダイレクトの設定をしていないと、404エラーになります。パーマリンクの構造を変えた場合もそうですね。

404エラーが頻発すると、Googleはそのページは存在しないと認識して、検索順位を思いっきり下げます。オーガニック検索されないほど下がります。301リダイレクトの設定は癖があることと、ページ数が多いと手作業の設定によるミスは起きてしまうので、常に404エラーが出ていないか注意が必要です。




最後に

ブログやサイトを長い期間続けているのであれば、本来はドメイン変更はするべきではありません。サイト名の変更だけであれば大した話ではないですが、ドメインやパーマリンクの構造を変えることは、大きなマイナスにしかなりません。

ただ、「WordPressを使ってブログを始めるぞ!!」と意気込んで始める時って、基本的にみんな初心者なんですよね。

サーバを借りるところから始まり、ドメインの仕組みも分からないし、そもそもWordPressをどう使えばよいのか!?から始めると思います。そんな初心者の段階から、いきなりSEO対策をバッチリするのて難しいと思います。人間は『習うより慣れろ』の生き物なので。コンテンツの作り方から少しずつ始めて、徐々にSEOやサイト運営について学んで行くものです。

ある程度の規模までブログを成長させた時に、「あー初めにこうやっておけば良かったな・・・」と思い、作り直したくなることがあるかもしれません。しかし、ある程度の集客をているブログを捨てることはもったいないです。そんな風に考えている方に、今回の記事が参考になれば幸いです。