- サイトデザイン工事中です。ご意見をお寄せください。
- 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細)
Movable Type から WordPress への移行
このページ「Movable Type から WordPress への移行」は 情報が古くなっている可能性があります。最新版(英語)も合わせてご覧ください。最新に更新してくださる協力者を求めています。
このページ「Movable Type から WordPress への移行」は一部未翻訳です。和訳や日本語情報を加筆してくださる協力者を求めています。
目次 |
このページでは、Movable Type または TypePad から WordPress へ移行する方法を紹介します。
基本的なステップは他のブログツールなどからのインポートと変わりませんが、パーマリンクを維持する方法など Movable Type/TypePad 特有のコツを詳しく書いています。
前提条件
- WordPress のインストールを完了している
- 元となる Movable Type サイト、新しい WordPress サイトともにドメインは
http://example.com/である
MovableType からのエクスポート
まず、以下の公式マニュアルに従って記事、コメント、トラックバックをエクスポートします。
- ブログ記事のエクスポート(Movable Type 4 ドキュメント)
- ブログ記事のエクスポートとインポート(Movable Type 5 ドキュメント)
以下では、ここで作成したファイルを「エクスポートファイル」と呼びます。
文字コードの一致
WordPress では UTF-8 がデフォルト文字コードです。Movable Type ブログが他の文字コードの場合は、エクスポートファイルを変換して一致させる必要があります。
- テキストエディタで import.txt ファイルを開き、文字コードを変更して保存する。
- Mac OSX および Unix/Linux 系のシステムでは、iconv を使って import.txt ファイルを変換できる。
$ iconv -f ISO-8859-1 -t UTF-8 import.txt > import_new.txt
WordPress へのインポート
WordPress 2.7 以降でのインポートは、管理パネルの ツール → インポート → Movable Type と TypePad から行います。
手順はコンテンツインポート情報ページの「基本的な方法」セクションに書かれている通りです。実行の際は、リンク先やインポーターページの説明もよく読んでください。
その他気を付けること
大量の投稿のインポート
元のサイトに大量の投稿があった場合には、タイムアウトやアップロードファイルサイズ制限によるエラーが発生することがあります。この場合は、サーバーのメモリー制限を編集する必要があります。
参考:
編集するための権限がない場合は、エクスポートファイルサイズを小さくして対応することもできます。エクスポートファイルをテキストエディタで編集し、小分けにしながらアップロードするとよいでしょう。
パーマリンクを維持する
サイト内のリンクを修正しても、検索エンジンや外部サイトからのリンクは更新されません。リンク切れを防ぐために、ブログ投稿や固定ページのパーマリンクを維持するための対策が必要になります。
多くの方法では、WordPress のサーバーで .htaccess や Apache の mod_rewrite モジュールが利用できることが前提になります。分からない場合は、サーバー管理者に問い合わせてください。
旧 URL と新 URL を統一する
新旧 URL を完全に統一することで、リダイレクトせずにパーマリンクを維持できます。
以下で、Movable Type のテンプレートを使って書き出した固定リンクファイル名をもとに WordPress データベースをまとめて更新する方法が紹介されています。
.htaccess を使ったリダイレクト
以下は、.htaccess ファイルのみを使った新しい URL へのリダイレクト方法です。
まず、以下のコードをもとに Movable Type のテンプレートを作成し、redirect.php として出力します。このファイルを、WordPress をインストールしたディレクトリにアップロードします。
<?php
require('wp-config.php');
header('Content-type: text/plain');
?>
<MTEntries lastn="999999">
Redirect Permanent /archives/<$MTEntryID$>.html http://example.com/archives/<$MTArchiveDate format="%Y/%m/%d"$>/
<?php echo sanitize_title("<$MTEntryTitle$>"); ?>
</MTEntries>
Movable Type で拡張子を .html ではなく .php、.htm などにしていた場合、その部分を編集してください。
Movable Type のエントリー ID の前にゼロ(0)をつける設定にしていた場合は、"Redirect ..." からを以下のようにします。
Redirect Permanent /archives/<$MTEntryID pad="1"$>.html http://example.com/archives/<$MTArchiveDate format="%Y/%m/%d"$>/
<?php echo sanitize_title("<$MTEntryTitle$>"); ?>
また、Movable Type で "dirify" オプションを使っていた場合は以下のようにします。
Redirect Permanent /archives/<MTEntryTitle dirify="1">.php http://example.com/index.php?s=<$MTEntryTitle encode_url="1"$>
.htaccess と mod_rewrite を使ったリダイレクト
mod_rewrite モジュールを使えば、サーバーによるスムーズな URL の書き換えを行うことができます。mod_rewrite と .htaccess が両方とも使える場合は、以下の内容を含む .htaccess ファイルを作成し、WordPress インストールのルートに置きます。
RewriteEngine on RewriteRule archives/0*(\d+).html http://example.com/index.php?p=$1 RewriteRule index.rdf http://example.com/index.php?feed=rdf RewriteRule index.rss http://example.com/index.php?feed=rss RewriteRule index.xml http://example.com/index.php?feed=rss2
注: これにより、他のサイトで読み込まれる RSS/RDF フィードも正しくリダイレクトされます。
投稿 ID 番号を維持する
投稿 ID の番号を含むパーマリンクを維持したまま移行する方法。
参考:
- IDを維持したままMovable Type 3.2からWordPress2.0.2へ移行する - Odysseygate.com - MT 3.2 → WP 2.0.2 への移行(2006年5月)。
- Movable TypeからWordpressへの移行(パーマリンクを維持)- 上大岡的音楽生活
Movable Type 形式のパーマリンク構造を使う
WordPress でそのまま Movable Type 形式のパーマリンク構造を使うには、以下のリンク先を参考にしてみてください。
参考:
- MovableTypeからWordPressへの完全移行方法 - 記事ID、タグ、パーマリンクも含めた移行方法(2008年10月)。
- MovableTypeからWordPressへ同じパーマリンクでの移行方法 - blog@browncat.org - 情報が少し古くなっているが、基本的な手順の参考として(2007年6月)。
タグのインポート
Movable Type 4 以前のバージョンでは、エクスポートファイルにタグ情報が含まれません。以下の情報を参考にしてみてください。
インデックステンプレートの作成
Movable Type のブログ記事インポートフォーマットページの「Movable Type 4 以前のバージョンからのブログ記事インポート」セクションにあるテンプレートを参考に、インデックステンプレートを作成します。
エクスポート・インポートプログラム の編集
Movable Type 側のエクスポートプログラム(/lib/MT/ImportExport.pm)と WordPress のインポートプログラム(/wp-admin/import/mt.php)に手を加えれば、タグなども含めたエクスポートファイルを扱えます。
参考:
- MovableTypeからWordPressへの完全移行方法 - 記事ID、タグ、パーマリンクも含めた移行方法(2008年10月)。
ユーザーの移行体験記
実際に Movable Type から WordPress へ移行した方のブログ記事も参考にしてみてください。
- MovableTypeからWordPress 2.9へ移行してみた(1) ~移行・テーマ~ - MT 4.261 → WP 2.8.6 への移行(2009年12月)。
- Movable TypeからWordPressへの移行メモ - MT 4.31 → WP 2.8.6 へ1800件の投稿を移行。URL 変更やタグのインポート対策のコード例も(2009年11月)。
- WordPressへ移行するならXMLを書き出すのがスムーズ - MT 標準のエクスポート機能を使わず、テンプレートで XML ファイルを生成(2009年6月)。
- ブログをMovableTypeからWordPressに移行しました - MT 3.33 → WP 2.7 への移行(2009年1月)。
- MovableTypeからWordPressへのURL込みの移行方法 - MT 3.35j → WP 2.2 への移行。
英語の移行体験記も読みたい場合は、Codex 原文をご覧下さい。
最新英語版: WordPress Codex » Importing_from_Movable_Type_to_WordPress (最新版との差分)