ブログ作成CMSは確実にMovableType(MT)からWordpress(WP)に移行していった形ですね。

日本では最初はMTの書籍が豊富にあったので、最初に利用するのに好まれるところがありましたが、今では書籍や情報もWordpressの方が多いと思います。

私もMovabletypeをphp化して利用するといった勝手の悪いことをしていたので
ほぼWordpressに移行を目指すことにしました。

MT⇒WPの移行で困るのが今までの資産(特にURL)が変わってしまうという点です。
両方のCMSでインポート・エクスポートの機能を用意していますが、
URL情報をそこに含ませないのでそれではうまくURLを移す事はできません。

個人的な考えとしては、引越しを意識するなら新しいブログで再び綺麗に
作り直すのであれば過去の資産は忘れてもいいのではと思っています。
(特にたくさんの方に見てもらえている大事なページだけ対応するぐらいで良さそうです)

と前置きはいいとして、自分が利用したスマートと感じる引越しの仕方を紹介します。

それはWPのインポート機能でWXR(WordPress eXtended RSS)形式のデータで引き継ぐというものがあります。
それをMovabletypeで出してやるというものです。MovableTypeではサイトマップを作成する時みたいに
自分好みの形式でデータを構築できるのでうまくテンプレートを作ってやれば簡単にWXR形式で
記事がエクスポートできます。

で、テンプレートを作ろうかと思いましたが先人の知恵で作って公開してくれている人がいます。
(ありがたいですね)

MovableType5からWordPress3.0に移行 | wwm2.com

そのまま使うと最新のwordpressではwxrのバージョンがないよって言われるかもしれません。
そうしたら1行channelの下にちょいと追加するだけでいいです。

<wp:wxr_version>1.0</wp:wxr_version>

実際にやってみると非常に簡単です。

うまくいったテンプレートファイルを貼っておきます。

<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:wp="http://wordpress.org/export/1.0/"
>

<channel>
<wp:wxr_version>1.0</wp:wxr_version>
<title><$MTBlogName$></title>
<link><$MTBlogURL$></link>
<description><$MTBlogDescription$></description>
<language>ja</language>
<wp:base_site_url><$MTBlogURL$></wp:base_site_url>
<wp:base_blog_url><$MTBlogURL$></wp:base_blog_url>

<MTSetVarBlock name="ecount"><$MTBlogEntryCount$></MTSetVarBlock>
<MTEntries lastn="$ecount">
<item>
<title><$MTEntryTitle$></title>
<link><$MTEntryPermalink$></link>
<pubDate><$MTEntryDate format="%Y-%m-%d %H:%M:%S"$></pubDate>
<dc:creator><![CDATA[<$MTEntryAuthor$>]]></dc:creator>
<category><![CDATA[<$MTEntryCategory$>]]></category>

<category domain="category" nicename="<$MTEntryCategory$>"><![CDATA[<$MTEntryCategory$>]]></category>
<MTEntryIfTagged>
<MTEntryTags>
<category domain="tag"><![CDATA[<$MTTagName$>]]></category>

<category domain="tag" nicename="<$MTTagName$>"><![CDATA[<$MTTagName$>]]></category>
</MTEntryTags></MTEntryIfTagged>

<guid isPermaLink="false"><$MTBlogURL$>/wp/?p=<$MTEntryID$></guid>
<description></description>
<content:encoded><![CDATA[<$MTEntrybody$>]]></content:encoded>
<guid isPermaLink="false"><$MTEntryPermalink$></guid>
<excerpt:encoded><![CDATA[<$MTEntryExcerpt$>]]></excerpt:encoded>
<wp:post_id><$MTEntryID$></wp:post_id>
<wp:post_date><$MTEntryDate format="%Y-%m-%d %H:%M:%S"$></wp:post_date>
<wp:post_date_gmt><$MTEntryDate format="%Y-%m-%d %H:%M:%S"$></wp:post_date_gmt>
<wp:comment_status>open</wp:comment_status>
<wp:ping_status>open</wp:ping_status>
<wp:post_name><$MTEntryBasename$></wp:post_name>
<wp:status>publish</wp:status>
<wp:post_parent>0</wp:post_parent>
<wp:menu_order>0</wp:menu_order>
<wp:post_type>post</wp:post_type>
<wp:post_password></wp:post_password>
<wp:postmeta>
<wp:meta_key>_edit_lock</wp:meta_key>
<wp:meta_value>1221409228</wp:meta_value>

<MTComments sort_order="ascend">
<wp:comment>
<wp:comment_id><$MTCommentID$></wp:comment_id>
<wp:comment_author><![CDATA[<$MTCommentAuthor$>]]></wp:comment_author>
<wp:comment_author_email><$MTCommentEmail$></wp:comment_author_email>
<wp:comment_author_url><$MTCommentURL$></wp:comment_author_url>
<wp:comment_author_IP><$MTCommentIP$></wp:comment_author_IP>
<wp:comment_date><$MTCommentDate format="%Y-%m-%d %H:%M:%S"$></wp:comment_date>
<wp:comment_date_gmt><$MTCommentDate format="%Y-%m-%d %H:%M:%S"$></wp:comment_date_gmt>
<wp:comment_content><![CDATA[<$MTCommentBody convert_breaks="1"$>]]></wp:comment_content>
<wp:comment_approved>1</wp:comment_approved>
<wp:comment_type></wp:comment_type>
<wp:comment_parent>0</wp:comment_parent>
<wp:comment_user_id>0</wp:comment_user_id>
</wp:comment>
</MTComments>

<MTPings sort_order="ascend">
<wp:comment>
<wp:comment_id><$MTPingID$></wp:comment_id>
<wp:comment_author><![CDATA[<$MTPingBlogName$>]]></wp:comment_author>
<wp:comment_author_email></wp:comment_author_email>
<wp:comment_author_url><$MTPingURL$></wp:comment_author_url>
<wp:comment_author_IP><$MTPingIP$></wp:comment_author_IP>
<wp:comment_date><$MTPingDate format="%Y-%m-%d %H:%M:%S"$></wp:comment_date>
<wp:comment_date_gmt><$MTPingDate format="%Y-%m-%d %H:%M:%S"$></wp:comment_date_gmt>
<wp:comment_content><![CDATA[<strong><$MTPingTitle$></strong>
<$MTPingExcerpt$>
...]]></wp:comment_content>
<wp:comment_approved>1</wp:comment_approved>
<wp:comment_type>trackback</wp:comment_type>
<wp:comment_parent>0</wp:comment_parent>
<wp:comment_user_id>0</wp:comment_user_id>
</wp:comment>
</MTPings>
</item>
</MTEntries>
</channel>
</rss>