FC2 Blog から WordPress.com への移転

大学のサークルのブログを、FC2 から WordPress.com に移転しました。そのときの手順です。

FC2 からエクスポート

記事のエクスポート

スクリーンショット 2016-06-21 18.41.34_trim

FC2 にログインして、[ツール] から [データのバックアップ] を選択します。

スクリーンショット 2016-06-21 18.41.15

次のページの [エクスポート] で年度別またはすべての記事をテキストファイルでダウンロードできます。

画像のエクスポート

画像やその他のファイルは、上記ページの下のほうからダウンロードできます。ただしこちらは一括でダウンロードすることができません。「画像ファイル」のリストを開くと、画像がずらずらと img タグで並べて表示したページが出てきます。一方、「すべてのファイル」のページでは a タグでリンクを付けられたアドレスがずらっと並んでいます。こっちの方が多少処理がしやすいかもしれません。

ここから一通りすべてのファイルをダウンロードする必要があります。私はとりあえずアドレスを一通りテキストファイルにコピペして書き込み、ターミナルで

while read line; do wget $line; sleep 1s; done < fc2.txt

みたいにやってダウンロードしました。

 

インポートの準備

テキストファイルの編集

テキストファイルは、以下のように各記事の内容が記述されています。

AUTHOR: 著者名
TITLE: タイトル
STATUS: Publish
ALLOW COMMENTS: 1
CONVERT BREAKS: default
ALLOW PINGS: 1
PRIMARY CATEGORY: カテゴリー
CATEGORY: カテゴリー

DATE: 11/05/2008 20:14:11
-----
BODY:
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
-----
EXTENDED BODY:

-----
EXCERPT:

-----
KEYWORDS:

-----

インポート前にこれを適宜修正しておきます。AUTHER はインポート時に割り当てを設定できるので、別段置き換える必要はなさそうです。CATEGORY の名称が違う場合などはここで変えておくのが良いのかなあと思います。

また、画像のアドレスが変わっています。FC2 では http://blog-imgs-(数字).fc2.com/(ID1文字目)/(ID2文字目)/(ID3文字目)/(ID)/_(数字10桁).jpg ですが、Wordpress.com では http://(ID).files.wordpress.com/wp-content/uploads/ファイル名となっています。ID をExample とすると、適当に Vim で

/\vhttp:\/\/blog-imgs-\d+\.fc2\.com\/e\/x\/a\/example
:%s//http:\/\/example.files.wordpress.com\/wp-content\/uploads/g

とやって置き換えました。サーバ名の数字の部分が微妙に違うから何も考えず正規表現使った方が楽っぽい。

画像のファイル名について

WordPress.com のファイル名は case sensitive のようなので同様に :%s/\(<.\{-}>\)/\L\1/g とやってタグ内の文字をすべて小文字にします。ファイル名の先頭のアンダーバーは無視されるので同様に直します。また、FC2 上のファイル名はすべて ASCII 文字のようなので今回はおそらく関係ないともいますが、日本語のファイル名の場合は URL エンコードされます。

WordPress の設定

テキストファイル中に設定されているカテゴリをそのまま同じ名称で WordPress にも設定します。これでカテゴリは自動で設定されます。名称が同じならばサブカテゴリに入れても大丈夫でした。

WordPressへのインポート

管理メニューから [ツール]→[インポート] と選択するとインポートするファイルの種類を選択する画面に行きます。FC2 ブログは Movable Type なので [Movable Type and TypePad] を選択します。次の画面でインポートするファイル内に記述されている投稿者と WordPress 上でのユーザの対応付けを設定すればインポート作業は終了です。