MT3.3からWordPress2.5への移行時に行った事

メモ代わりに。

移行する際に気になるのがパーマリンクの保持。

ようは以前と同じURLで移行しないとダメだよねって事で、

色々と調べてみたが最新の2.5対応が無かったorz

でもやる事としては、同じだよね。

  1. パーマリンクの保持
  2. タグの保持
  3. RSSフィードのURLの保持
  4. トラックバックとコメントの保持

位かな。

4のトラックバックとコメントはそのままデータをインポートすればOKで、

3のRSSフィードはMTのRSSのURLを.htaccessでリダイレクトしてやるなどで、

対処出来そう。

ただ1のパーマリンクと2のタグがやっかいだった。

そこで参考にしたのが、

ググったら絶対上位に出てくるサイト

MovableTypeからWordPressへのURL込みの移行方法

ここが解りやすいので、参考にさせていただきました。

まずやる流れが下記になる。

  1. WordPressのインストール
  2. WordPressのパーマリンクの設定
  3. MovableTypeへのパッチ
  4. WordPressへのパッチ
  5. MovableTypeからデータをエクスポート
  6. WordPressへデータをインポート

1.WordPressのインストール

WordPressの日本語サイトから最新バージョンの2.5をダウンロードしてくる。

インストール作業自体は以前のバージョンよりも全然簡単になっているので、

WordPress日本語版のインストールを見れば簡単にサクっと出来るはず。

2.WordPressのパーマリンクの設定

インストールが完了したらパーマリンクの設定になるので、

にあるタブから「設定」を選択して「パーマリンク設定」を選択する。

そうすると「一般的な設定」に「カスタム構造」というのがあるので、それを選択する。

設定内容は下記になる。

/%year%/%monthnum%/%postname%.html

この「カスタム構造」は「.htaccess」を使用するため書き込み権限が無いとダメみたいです。

その場合、ガイダンスが表示されるみたいなのでそちらの指示に従ってください。

3.MovableTypeへのパッチ

こちらは、MovableTypeからWordPressへのURL込みの移行方法参考にするのが一番良い。

実際にも記載されている通りにやりましたので、一応書いておきます。

mt(MTをインストールしたディレクトリ)/lib/MT/ImportExport.pmファイルの541行目へ追加を行う。

丁度540行目にある

DATE: <$MTEntryDate format="%m/%d/%Y %I:%M:%S %p"$>

の下に

PERMALINK: <$MTEntryPermalink$>
<MTEntryIfTagged>
TAGS: <MTEntryTags glue=","><$MTTagName$></MTEntryTags></MTEntryIfTagged>
ID: <$MTEntryID$>

を追加する。

4.WordPressへのパッチ

これは何処にも載っていなかったが、

以前のバージョンへの対応を見れば簡単に解る。

ファイルは色々なサイトに記載されている通り

wordpress/wp-admin/import/mt.php

になる。

このファイルの丁度325行目に追加する。

以前のバージョンでは「PHPのSwitch」で処理されていたみたいだが、

最新は「ifとかelseifとか」で処理されてたw

[sourcecode language=’php’]
} else if ( 0 === strpos($line, “PERMALINK:”) ) {
$value = trim( substr($line, strlen(“PERMALINK:”)) );
$tmpvalue = strrchr($value,”/”);
$post->post_name = substr($tmpvalue, 0, strpos($tmpvalue, “.”));
[/sourcecode]

この4行を追加する。

なぜこの4行を追加するかと言うと、

DBへインポートする際に「wp_post」テーブルのカラム「post_name」へMTの記事データのタイトルが入ってしまうため、記事とURLのつながりが無くなってしまう為にパーマリンクがちゃんと保持されないという現状になるみたいです。

なので、上記を追加する事で正常にデータがインポートされます。

5.MovableTypeからデータをエクスポート

次に記事データをエクスポートします。

MovableTypeの管理画面のメニューから「読み込み・書き出し」を選択する。

上記タブから「エントリーの書き出し」を選択する。

最後に「~からエントリーを書き出す」ボタンをクリックするとデータが「.txt(テキスト形式)」で保存されます。

中身は、

AUTHOR: kishi-r
TITLE: 最近読む著者たち
STATUS: Publish
ALLOW COMMENTS: 1
CONVERT BREAKS: __default__
ALLOW PINGS: 1
PRIMARY CATEGORY: Book
CATEGORY: Book

DATE: 12/04/2006 09:49:02 PM
PERMALINK:
TAGS: book
ID: 8
—–
BODY:
・石田衣良
ご存知、池袋ウエストゲートパークを書いている人
他にも結構面白い本が沢山ある。
例えば、「4TEEN」「うつくしい子ども」「エンジェル」「ブルータワー」などがおもしろかった。
一番グっときたのは「ブルータワー」です。
簡単に説明すると内容はSFなんですが、
現代と自分の頭の中の世界を行き来し、世界を救うという話です。
それぞれ登場するキャラが個性的でおもしろい。
映画化すると結構人気がでるかもしれない。
他の作品も是非読んで欲しい。

・・・・・・・・以下続きます。

って感じで保存されているはずです。

6.WordPressへデータをインポート

最後にWordPressへデータをインポートします。

管理画面から下記画面にある「管理」を選択します。

その中にある「インポート」を選択します。

そうすると色々なブログの選択項目が出てくるので、ここから「MovableTypeとTypePad」を選択します。

次に「自分のコンピュータからファイルを選択する」で先ほどエクスポートしたファイルを選択して、

真ん中にある「ファイルをアップロードしてインポート」ボタンをクリックすれば自動でインポートされます。

これでパーマリンクへの対応は完了です。

このブログ自体も上記の手順で移行しました。

RSSのフィードもさくらインターネットであれば、リダイレクトも出来たので多分OKなのかな?

タグに関してはまた試してみて記載しようと思います。

MovableTypeのバックアップ

現在のブログはMovableTypeを使っているが、

今度DjangoでBlogを作りたいと思っている。

しかし現在はDBを使ってエントリーを管理していない。

なので、

管理画面から

設定→読み込み/書き出し

に遷移してバックアップをしようと思っても、

テキストでしか書き出せない。

なので、

一度テキストで書き出して、

WordPressでテキストをDBに食わして

それをdumpしてきた方が良いのかな?

ってかdumpしてもどんな形で

吐き出されるのかがまだ解らないので、

一度やってみて試してみようと思う。

でも調べてみた感じ、

最悪WordPressになるかもしれないな。。。

クリエイティブ・コモンズライセンスが変更

「クリエイティブ・コモンズライセンス(Creative Commons Licence)」
が内容や画像を変更。

下記 ↓ の画像に変更されていた。

この前まで「クリエイティブ・コモンズライセンス(Creative Commons Licence)」
がどうしても表示されなかった。

・・・けどライセンス・マークが変更されていたので、もしかしたら!
と思い設定したら表示されるようになったよ。

なんで前までダメだったんだろう?

おかしいよね?

別に表示されなくてもよかったけど、なんか気持ち悪いじゃんねぇ~。

でも表示されたからもう良いかぁ~♪

画像なんだけど、以前よりは見やすくなったんだとさ。

やっぱみんな解り難いとかの意見が多かったかららしいよ。

いくつか内容が変わっていたので、気になる人はチェックしておいた方が
よろしいかと。

参考サイト:小粋空間
http://www.koikikukan.com/archives/cat_53.php

タグクラウド(Tag Clouds)を変更

タグクラウドをちょっこし変更してみた。

まぁ~登録されているタグの数(カウント)を表示させるだけなんだけどね。

表示するには

MTTagCount
※指定したタグが含まれるエントリー数を表示します。

ってのを使うんだぁ~。

<a href="<$MTTagSearchLink$>"><$MTTagName$>&nbsp;
(<$MTTagCount$>)</a>

俺はこんな感じで書いてみた。

そしたら一番上にあるタグクラウド画像の表示になった。

簡単だな。

でも前よりすげ~見やすくなった気が・・・。

ただの自己満!!!

知り合いにカテゴリの方が見やすいよって言われたので、

カテゴリを一番上へに表示。

せっかく変えてみたんだけどね、タグクラウドは一番下へ・・・。

やっぱ見難いよね。。。

参照記事(小粋空間)
http://www.koikikukan.com/archives/2006/06/17-005054.php

Google以外にも有効なサイトマップを作ってみよ~

GoogleSitemapsのフォーマットに合わせて「sitemap.xml」を吐き出してあげることによって 、

Googleに登録されやすくなるサイトマップ「sitemap.xml」。

「sitemap.xml」以外にもYahooやMSNにも登録されやすくなるというサイトマップ「ROR」というファイルがあるみたい。

「ROR」とはResources of a Resourceの略らすぃ~。

こちらは全ての検索エンジンに有効とされるサイトマップ。

MovableTypeで「ROR」を自動で作るように出来るらしいので、「ロリポップでMovableType3.3実験室」を参考に導入。

まず「メイン・メニュー > サイト名 > テンプレートのインデックス」に

●テンプレート名:ror.xml
●出力ファイル名:ror.xml

というファイルを作成。

上記のファイルのソースがこちら

<?xml version="1.0" encoding="<$MTPublishCharset$>"?>
<!–  This file is a ROR Sitemap for describing this website to the
 search engines. For details about the ROR format, go to
 www.rorweb.com.   –>
<rss version="2.0" xmlns:ror="http://rorweb.com/0.1/" >
<channel>
    <title>ROR Sitemap for <$MTBlogURL encode_xml="1"$></title>
    <link><$MTBlogURL encode_xml="1"$></link>
    <item>
    <title>ROR Sitemap for <$MTBlogURL encode_xml="1"$></title>
    <link><$MTBlogURL encode_xml="1"$></link>
    <ror:about>sitemap</ror:about>
    <ror:type>SiteMap</ror:type>
    </item>
<MTEntries lastn="9999">
    <item>
    <link><$MTEntryPermalink encode_xml="1"$></link>
     <ror:updated><$MTEntryModifiedDate utc="1" 
format="%Y-%m-%dT%H:%M:%SZ"$></ror:updated> 
     <ror:updatePeriod>day</ror:updatePeriod>
     <ror:sortOrder>0</ror:sortOrder>
     <ror:resourceOf>sitemap</ror:resourceOf>
    </item>
</MTEntries>
</channel>
</rss>

こちらを保存して、各ページの<head>と</head>の間に

<link rel="alternate" type="application/rss+xml" title="ROR"
 href="<$MTBlogURL$>ror.xml" /> 

を挿入して、サイトを再構築するだけという簡単な作業。

これで登録されやすくなるのかなぁ~。
とりあえず様子見かな・・・。

参考URL 「ロリポップでMovableType3.3実験室」