はてなブログからWordPressへブログを移転する

ブログシステムをはてなブログからWordPressへ引っ越したので、作業手順をメモしておきます。前提として、

  • はてなブログProで独自ドメイン運用
  • WordPressに移行する際に別のドメインに変更
  • レンタルサーバーを借りてWordpressの設定済み

というような感じの状況です。

はてなブログから記事をMT形式でエクスポート

まず、はてなブログからデータを出力(エクスポート)します。ダッシュボードの「設定」メニューから詳細設定を選んで記事をエクスポートします。「設定 > 詳細設定 > エクスポート > ダウンロードする」と選択していけば良いです。

パーマリンクのURLをいい感じに変更

パーマリンクのURLは、ちょっとだけSEOに影響があるようです。そのため、この機会にパーマリンクのURLを最適なものに修正しました。

パーマリンクのURLをどのようにするのかは微妙な問題です。カテゴリーの階層を表示させた方が良いとか、拡張子は表示させた方が良いとか、様々な議論があります。色々と検討した結果、今回は以下のような感じのURLで運用していくことにしました。

hogehoge.com/blog-entry-name-20150401

WordPressでは、はてなブログと異なり、カテゴリーのスラッグをURLに表示させることができます。カテゴリーをURLに表示した方がSEO的には有利と言われていますが、今回は表示させないことにしました。カテゴリーを変更する必要に迫られた場合に、URLが変わらないようにするためです。

また、拡張子(.htmlなど)を表示するか否かも微妙な問題ですが、今回は拡張子を表示しないこととしました。将来、拡張子を変更することがあってもURLが変わらないようにするためです。

URLを変更するために、はてなブログのサイトマップ(hogehoge.com/sitemap.xml)から記事URLの一覧を取得して、新しいURLとの対照表をcsvファイルで作っておきました。URLを変更する必要がある記事については、新しいURLを自分で考えて手打ちで作成しました。検索エンジンが理解できるよう、英単語とハイフンでURLを構成します(URLにおけるハイフンとアンダーバーには微妙な違いがあるようです)。

カテゴリー、アーカイブ、フィードのURLなどについても、忘れずに対照表に記載しておきます。

WordPressに記事をインポート

はてなブログからエクスポートしたファイルをWordpressにインポートします。その前に、エクスポートしたファイルの中身を少しだけ書き換えます。

エクスポートしたファイルの中に、「BASENAME」という属性を記載する場所があります。これは記事のURLを指定する場所です。ここに書いてあるURLを、先ほど作ったURLの対照表に従って、テキストエディタを使って手作業で書き換えました。スクリプトを組んで処理した方が速いと思いますが、新しいURLが最適なものかどうか確認しながら手作業で進めました。

BASENAMEの書き換えが終わったら、ファイルをインポートします。「ツール > インポート > Movable Type and TypePad Movable Type and TypePad」と進み、インポートするファイルを選択した後、「ファイルをアップロードしてインポート」を選択すれば良いです。インポートには数分ほど時間がかかります。

PHPを使って301リダイレクト

古い記事から新しい記事にリダイレクトするために、「301リダイレクト」と呼ばれる方法でリダイレクトします。301リダイレクトは、永久にURLを変更する場合に用いられます。

301リダイレクトは.htaccessに記載する方法が有名ですが、サーバー側の都合により、今回はPHPを使って301リダイレクトすることにしました。具体的には、古いURLにアクセスがあった際、以下のようなプログラムを走らせるようにします。

<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://hogehoge.com/blog-entry-name-20150401");
exit();
?>

既に作成している古いURLと新しいURLの対照表を使って、URLのひとつひとつについて、301リダイレクトさせるためのPHPのコードを記載したファイルを生成しました。同時に、.htaccessファイルを修正して、htmlファイルにアクセスするとPHPが動くように設定しました。

以下の記事が参考になります。

.htaccessを使って、PHPを拡張子.htmlで動かす方法 | それからデザイン スタッフブログ

ネームサーバーの変更

お名前.comやムームードメインなど、ドメインのレジストラにログインして、ドメインのネームサーバーを変更します。はてなブログの独自ドメインの設定も解除しておきましょう。しばらくすると、新しいサーバーの内容が表示されるようになるはずです。表示されなかったら設定を確認しましょう。

画像データの移動と属性の設定

はてなブログからWordpressに記事をインポートした場合、画像ファイルは、はてなフォトライフ上に保存されている画像ファイルが読み込まれます。そのままでも画像が表示されるので大きな問題はありませんが、なんとなく気持ち悪いのでひとつずつ差し替えていきました。

はてなフォトライフから画像をダウンロードしてサーバーに上げなおし、手作業でそれぞれの記事に貼付けました。同時に、画像のtitle属性とalt属性を適切に設定していきます。

はてなブログではtitle属性とalt属性が設定できませんが、Wordpressでは設定できます。SEO的にはtitle属性とalt属性を設定しておいた方が良いと言われていますので、Wordpressへ引っ越ししたのを機に、title属性とalt属性を設定しました。

リンク切れの確認、リンクの修正

WordPressのプラグイン「Broken Link Checker」を使って、リンク切れを確認しました。

WordPress › Broken Link Checker « WordPress Plugins

古いブログで使っていた内部リンクは、当然、エラーになるので修正が必要です。はてなブログで使っていた、ブログカード形式でのリンクもエラーになります。その他に、はてなブログで使っていた脚注もエラーになります。

内部リンクや外部リンクは通常のHTML形式でリンクを張り直しました。脚注はBroken Link Checkerの機能を使って、リンクの解除を行いました。これだけで、リンク切れがなくなって、記事の下の方に一応は脚注が残ります。

メタ属性の設定

WordPressのSEO対策用プラグインの定番、「All in One SEO Pack」を使って、各記事にメタ属性を設定しました。

WordPress › All in One SEO Pack « WordPress Plugins

Google AnalyticsとGoogle Webmaster toolsの設定

新しいサイトにGoogle AnalyticsGoogle Webmaster toolsを設定しました。Google Webmaster toolsにはサイト移転のための機能があるみたいなんですが、使えなかったのでスルーしておきました。使えそうな人は使った方が良いと思います。Googleに新しいURLが認識されるのが早まるはずです。

はてなブログからWordpressに引っ越しするためにした作業は、こんなところでしょうか。他にも書くことがあれば追記します。

これからブログを書くならWordPressがおすすめ!

はてなブログはSEO(検索エンジン最適化)にも強く、おしゃれで書きやすいブログサービスです。これからブログを始めよう!という方には、わたくしも激しくお勧めします。しかしながら、本格的にブログを書いていこうと思うと、かゆいところに手が届かないのも事実です。

もしこれから本格的にブログを書いていきたい!と思っているなら、WordPressを使った方が良いと思います!今回のわたくしのように、わざわざ面倒な作業をしなくて済みますし、技術力も身に付きます。

WordPressなどのブログシステムを使ってブログを書くのは、通称「プロブロガー本」と呼ばれる、プロブロガーのコグレさん、するぷさんの書籍でも勧められています。当ブログでもWordPressの使い方について書いていますので、ツイッターやRSSをフォローしてもらえればと思います。

シェアしてもらえるとうれしいです。゚(´っωc`)゚。