livedoor blog ⇒ FC2 blog ⇒ wordpressという手順で移行をしました。 このエントリはそのまとめです。特に内部リンクの変更を簡単手軽にできる方法を書いています。
参考になるのは、以下のエントリです。実際、自分もこの記事を参考にしました。
無料で、しかも簡単にライブドアブログからWordPressに移行する極意 | tetumemo
上記のエントリからもわかるように、FC2 blogはblog引越しツールが充実しています。 画像もそのまま移行してくれるので、それだけで引越し作業はとても楽になります。
ただ、問題が。それは内部リンクの修正です。 大量の記事がある場合には、内部リンクを修正するのがとても面倒です。 ただ、記事数が1500件ぐらいあって、とても1つ1つ手で修正するのは、苦労する割には報われない作業です。
手順概要
そこで、以下のような方法で移行しました。 データベースを触るので、なんとなくハードルは高いですが、やってみると簡単です。 手順の前提条件として、fc2 blog引越しツール等を使って、記事をwordpressに移行しておいてください。
・livedoor blogのArticleIDを取得 ↓ ・WordPressのデータベースにArticleIDを登録 ↓ ・WordPressの記事にある参照用リンクを変更
ちなみに、いきなりレンタルサーバに対してやるのは怖いので、xammp等で自分のパソコン上に環境を作って試すのが楽です。
livedoor blogのArticleIDを取得
livedoor blogのエントリはそれぞれ、ArticleIDという一意のIDをもっています。 これをWordPressにも使用します。
livedoor blogの管理画面からテンプレートに以下を記述します。 これを記述することで、個別記事の本文中に記事の登録日時とArticleIDが表示されます。 モロにSQLを書いているので、心情的に早めに元に戻した方がよいです。
<p>
update `wp_posts` set `post_name`= "<$ArticleId$>" where `post_date` = "<$ArticleDateYear$>/<$ArticleDateMonth$>/<$ArticleDateDay$> <$ArticleDateHour$>:<$ArticleDateMinute$>:<$ArticleDateSecond$>";
</p>
その後は自動収集ツール「GetHTMLW」を使って、エントリをローカルのハードディスクに集めます。 詳しい使い方はこちらです。
WordPressのデータベースにArticleIDを登録
ここから少しマニアックに。
GREP
正規表現を使ってGREPします。 使った正規表現は以下です。 (正規表現でなくても、単純なGREPでも問題ないと思います。)
^update
GREPした結果を編集
ALTキーを押しながらのドラッグで、不必要な選択範囲部分を切り取ります。 これで、WordPressに入れるSQL文ができました。
WordPressに登録
後は、データベースにアクセスして、一気にSQL文を流し込みます。 SQL文を流し込むのは、phpmyadminが楽です。用意されてなければ、直接SQLを流してくださいませ。
と、livedoor blogのテンプレートタグを使用したり、SQLを使用したりしているので、とっつきにくいかもしれません。同様のことができるプラグイン等があるので、それを使うのも一つの方法です。
けど、プラグインをインストールしたりするのは面倒だし、プラグインの使い方を習得するのに時間がかかるので、私はこのようなやり方をしました。(自分にはこの方法が早いっす)