Movable Type 4.0, 3 2 1 Go!
出ましたね。 Movable Type 4.0 ですよ!
本日はSAKKでのUpgrade-a-thonということで、自分のサイトを Movable Type3.x系から Movable Type 4.0 へアップグレードしました。
ざっくりと流れを以下にまとめます。
私のサーバはXREAなのですが、コンソールでごにょごにょするのはあまり強くないので、FTPクライアント経由で黙々とアップグレードを実施しました。
- MySQLをバックアップ。
- CGIがあったディレクトリmtをmt3にリネーム
- Movable Type 4.0 を FTP で mt4 ディレクトリにアップロード。
- mt.cgiにアクセス。mt-wizard.cgiが動くのでそれに従いながらmt-config.cgiを作成。mt-wizard.cgi最高!ホントにインストールの負荷が相当に軽減されるよ。素敵。
- ここがxrea特有のおまじない。mt-config.cgiが生成されたあと、Firefoxによる「included というプロトコルはどのプログラムにも関連づけられておらず、Firefox でこのアドレスを開く方法が分かりません。」というエラーが表示されます。これを解決するには、毎度恒例の「cgiをxcgに置き換える」方法で切り抜けるのがベターです。でも今回はMovable Typeのコードをいじりません。作業内容は以下の通りです。
- mt.cgiをmt.xcgにリネーム
- mt-upgrade.cgiをmt-upgrade.xcgにリネーム
- mt-config.cgiに以下の2行を記述。
AdminScript mt.xcg
UpgradeScript mt-upgrade.xcg
- これで管理画面へのアクセスが出来るようになります。
で、私はこれまでmtディレクトリにcgiもコンテンツも両方とも出力していました。しかし今回のアップグレードに関連して、コンテンツとcgiの分離に成功しました。これは思わぬ成果です。複数のブログを所有しているわけではありませんが、でもコンテンツとプログラムは別々に管理したいですもんね。
ここまではこれまでのコンテンツをそのまま Movable Type 4.0 に移行した場合の話です。ホント簡単です。でもせっかくなので、 Movable Type 4.0 にバンドルされているテンプレートやらデザインを試してみたいじゃないですか!だからテンプレートを修正したら個別アーカイブ(ブログ記事)が再構築のときに出力されない罠にかかりました。ハマりました・・・。
UPDATE「システムメニュー ≫ ブログ 」で表示されるブログ一覧で、希望のブログを選択し、「テンプレートを初期化」を行うとデフォルトのテンプレートになるそうです。よいこはそっちで、デフォルトテンプレートにしてくださいませ。MT4 - qootas.org/blog
というとおりにこのブログ全体のテンプレートを初期化します。そして、次に、「テンプレート ≫ アーカイブテンプレート ≫ ブログ記事」に進み、ページ下部のアーカイブマッピングを見ます。見ると、アーカイブマッピングが存在しませんでした。そこで『アーカイブマッピングを作成』をクリックしてパスを入力するわけですが、その際に過去との互換性を考慮して、「カスタム ≫ %y/%m/%f」にしました。これは yyyy/mm/entry_basename.htmlとunderscoreで連結したascii文字で表現されるファイル名になるものです。
そしてえい!再構築!!
やっと Movable Type 4.0 らしいブログになりました。
Movable Type 4.0 にみなさんもアップグレードすると良いと思います。何が良いかというと、私がオススメしたいのは、管理画面のクリック数の減少です。何か使いやすく感じるなぁと思ったのですが、それはクリック数が減少したことだと思います。Movable Type 4.0 公開と、これまでのMTの歴史年表:Goodpicでも『もう3.xには戻れない感じ』
という話も出ているくらいです。私も同じ感想です。もう3.xには戻れません。Movable Type ユーザなら迷わず 4.0 にした方がいいと思います。
== UPDATE: 10 Aug 2007 ==
コメント認証で他のサービスとの連携の際に、上述したような「included というプロトコル~」というエラーが出ました。mt-comments.cgi も mt-comments.xcg にリネームし、mt-config.cgi に「CommentScript mt-comments.xcg」という1行を追加しました。で、再構築を実施。これで vox や livejournal と連携することが出来るようになりました。
Comments