Home > Movable Type

Movable Type Archive

MovableTypeからWordPressへパーマリンクを変更せずに移行するメモ

かなり前にMovableType(3.2)からWordPress(2.0)へ移行した際の手順をメモ。

1.MovableTypeからテキスト形式でエクスポート
2.URLが変わらないように、MovableTypeのアーカイブマッピングとWordPressのURL設定を合わせる。
3.WordPressの管理画面からテキスト形式のファイルをインポート
4.「_」が「-」に変わっていたりするので、手動でURLを変更(DBを直接修正)
5.月別やカテゴリのアーカイブが表示されなかったので、.htaccessにRewriteRuleを追記
6.WordPressが出力するフィード(RSS等)のパスがMovabeTypeと違うのでリダイレクトさせる

てな感じで、何とかMovableTypeからアーカイブ等のパーマリンクを変更せずに済みました。
エントリの移行は画像のパスとかに注意すれば、比較的簡単に行くのですが、フィードをMovabeTypeと同じURLで出す方法がわからず、泣く泣くリダイレクトで対応しました。

mod_rewriteをいじったことがなかったので、今の状態も正しいのかいまいち自信がないですが、一応今の設定(.htaccess)を晒しておきます。

#.htaccess
# BEGIN WordPress

RewriteEngine On
RewriteBase /blog/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^archives/ /blog/index.php [L]
RewriteRule ^feed/ /blog/index.php [L]
RewriteRule ^comments/ /blog/index.php [L]
RewriteRule ^index.rdf$ feed/ [R=301,L]
RewriteRule ^index.xml$ feed/ [R=301,L]
RewriteRule ^atom.xml$ feed/atom/ [R=301,L]

# END WordPress

Movable Type 3.3xのコメントスパム対策

ほんとに今更ですが、Movable Type 3.3xのコメントスパム対策を変更したので簡単にメモ。

というのもこのサイトで以前行った設定がうまくいっていなかったらしく、コメントが投稿できない状態でした。「国民宿舎はらぺこ 大浴場」さんからいただいたトラックバックでようやく気づいたので、今日慌てて直しました。自分の確認不足で大変申し訳ないです。

で今回参考にしたのはこのサイト「Movable Type 3.3 でコメントスパム対策 (Forcing Comment Previews・MTHash) : アークウェブ ビジネスブログ」

ロボットがプレビュー画面を経由せずに直接コメント受付プログラム(mt-comment.cgi)にアクセスしてくることを利用して、プレビュー画面経由でなければコメントを受け付けないようにする方法です。
具体的には
・コメント投稿フォームから「投稿」ボタンを消す
・プレビュー画面から投稿を行ったことの判定として、プレビュー画面にhashを仕込む
・コメント受付プログラム(mt-comment.cgi)の方ではhashが正しい値でなければ投稿を受け付けないようにする

という対策で、Movable Type 3.3x対応というのがうれしい限りです。作業としてはまず、個別エントリーアーカイブのテンプレートから「投稿」ボタンを消す。次に「lib/MT/Template/ContextHandlers.pm」と「lib/MT/App/Comments.pm」にサイトにあるpatchを当てる。patchはローカル上のそれぞれのディレクトリにpatchファイルをコピーして、以下のようにすればいけるんじゃないかと。(Windowsの場合はこちらを参考に。「Windows環境で「ファイルにパッチ(patch)を当てる」 : 亜細亜ノ蛾 – Weblog」)

$ patch -b

あとは「plugins」ディレクトリに「salt.txt」を作り、中に任意の半角英数文字を入れて、アップすれば完了。なんとも簡単です。しかしバージョンが上がったらどうなるんだろう…。次バージョンではデフォルトでもっとしっかりしたコメントスパム対策がされるのを期待しております。

ホーム > Movable Type

Search
Feeds
Meta

Return to page top