JUGEM から Movable Type への移行を手助けするライブラリ - jugem2MT(Beta)

jugem2MT とは

jugem2MT とは、JUGEM(ジュゲム)で運営していたブログを Movable Type (MTOS を含む)に移行する際に、JUGEM のエクスポートデータを Movable Type のインポートデータに変換するライブラリです。

現在、ブログ記事に関するデータとコメントの移行に対応しています。トラックバックの移行には対応していません(今後対応するかも未定です)。

確認済みの動作環境

以下の環境で動作確認済みです。

  • Movable Type 4.25, 4.261
  • MySQL 5.0.51, 5.1
  • phpMyAdmin 2.11.2.2, 3.1.3.1
  • Firefox 3

注意事項

当ライブラリは、僕は実際の本番データの移行に使いましたし、ローカル環境でもテストしていますが、もしご利用される場合は自己責任でお願い致します。

また、データベースが MySQL で、phpMyAdmin が使える環境であることを前提としています。

使い方

ダウンロード

まずは以下から jugem2MT.zip をダウンロードして、解凍します。

Jugem でブログ記事のエクスポート

まずは JUGEM でブログデータをエクスポートします。

「ブログ設定 > インポート・エクスポート」を開きます。

 jugem2MT_01.png

続いて「▼JUGEMの別ブログへの引っ越し・バックアップ・書籍化データ用」のところで、100件以上ある場合は「1〜100件」と小さい方から「エクスポート」します。このとき、ファイル名は小さい方から順に「jugem0.xml」「jugem1.xml」となりますので、そのまま保存します。

ファイルの整理

このステップの作業は重要ですので慎重に行う必要があります。

ブログ記事数が100件以上で、エクスポートファイルが複数になった場合は、そのファイルを1つにまとめます。ファイルが1つで済んだ場合は、ファイル名から数字を取って「jugem.xml」として保存して、次のステップに進んでください。

まず、最初のファイル「jugem0.xml」を開き、最後の行にある「</entries></blog>」を削除します。

次に、2つ目のファイル「jugem1.xml」を開き、最初の行の「<?xml 〜 ?>」から一番最初に出てくる「<entries>」までを削除します。

<?xml version="1.0" encoding="utf-8" ?>〜
〜<entries>

削除後、この2つ目のファイル「jugem1.xml」を「すべて選択」し「コピー」して、1つ目のファイル「jugem0.xml」の末尾「</entry>」の直後に貼付けます。

もし、ファイルが3つ以上ある場合は、これまでの作業を繰り返します。貼付け後の「jugem0.xml」ファイルの末尾の「</entries></blog>」を削除し、3つ目のファイル「jugem3.xml」の一番最初に出てくる「<entries>」までを削除し、「jugem3.xml」をすべてコピーして「jugem0.xml」の末尾に貼付ける、という要領です。

作業が終わったら、「jugem0.xml」の数字を取って「jugem.xml」という名前にして、ダウンロードして解凍してできた「jugem2MT」フォルダに保存します。

jugem2MT でのオプション設定

「jugem2MT」フォルダ内にある「index.html」をブラウザ(Firefox 3 推奨)で開き、上段の設定欄の各項目を設定します。

jugem2MT_03.png

【投稿者名(この投稿者名で上書きする):】

インポートするブログ記事の投稿者名を半角英数で入力します。

【EntryID(このIDからブログ記事を追加する):】

追加する記事をどのブログ記事IDから追加するかを入力します。これはコメントをインポートする際に必要になりますので、コメントをインポートしない場合は次の欄へ進んでください。

このブログ記事IDは、Movable Type の管理画面でも確認できますが、マルチブログでサイトを運営している場合は、ブログ記事IDはブログをまたがって通し番号になるので、直接データベースで確認することをお勧めします。

ここでは、phpMyAdmin で確認する場合をご紹介します。

まず、phpMyAdmin にログインし、サイドバーから「mt_entry」のテーブルを開きます。

jugem2MT_04.png

右のフレームに mt_entry テーブルの構造が表示されたら、そのフレームの左上の「表示」をクリックしてテーブルの中身を表示させます。

jugem2MT_05.png

次に、ページ一番したの「>>」をクリックして、テーブル内の最後のレコードを表示させます。

jugem2MT_06.png

ここで表示された entry_idの列の最後の行の値が、そのシステムの最後のブログ記事IDになります。下の画像の場合は「288」がそれです。

jugem2MT_07.png

つまり、この例の場合は、「EntryID(このIDからブログ記事を追加する):」の欄には「289」と入力します。

【BlogID(このブログに追加する):】

インポート先のブログIDを入力します。ブログIDは、Movable Type の管理画面のURLの「blog_id=」の直後の数字です。

【テキストモード : 】

テキストモードを選択します。「リッチテキスト」又は「なし」を選択した場合は元のデータのままで、「改行を変換」を選択した場合は、「<br /><br />」と2つ連続する改行は、通常の改行(\n)に変換されます。

【コメント : 】

コメントを「許可する」か「許可しない」かを選択します。

【トラックバック : 】

トラックバックを「許可する」か「許可しない」かを選択します。

実行

上記の設定が終わったら「実行」をクリックします。「処理が完了しました」とアラートが出れば成功です。

jugem2MT_08.png

ページ中ほどにある「Movable Type インポート用テキスト」のテキストエリアの内容をコピーし、任意のテキストエディタに貼付け、UTF-8 で保存します。ファイル名は「import.txt」とでもしておきます。

また、下段の「MySQL コメントインポート用テキスト」のテキストエリアの内容もコピーし、任意のエディタに貼付けておきます。こちらは保存する必要はありませんが、念のため保存しておいても構いません。

Movable Type でブログ記事のインポート

いよいよ Movable Type へのインポートです。「ツール > インポート」でインポート画面を開きます。

jugem2MT_09.png

先ほど保存した「import.txt」を選択して「ブログ記事のインポート」をクリックしてインポートを開始します。

jugem2MT_10.png

「すべてのデータをインポートしました。」と表示されればインポート成功です。

phpMyAdmin でコメントのインポート

続いて、コメント関係のデータをデータベースにインポートします。

先ほどコピーしておいた「MySQL コメントインポート用テキスト」の内容を再度コピーします。

次に、phpMyAdmin にログインし、左のフレームで Movable Type のデータベース名を選択し、右のフレームで「SQL」をクリックします。

jugem2MT_11.png

すると、下にテキストエリアが表示されるので、そこに先ほどコピーした SQL文を貼付け、テキストエリアの右下の方にある「実行する」をクリックします。「SQL は正常に実行されました」が表示されれば成功です。

jugem2MT_12.png

この SQL によって、mt_comment テーブルと、mt_entry テーブルの entry_comment_count カラムに必要なデータが保存されます。

あとは、成功を祈り Movable Type を再構築すればOKです。

以上です。ご利用は自己責任でお願いします!

  • このエントリーをはてなブックマークに追加