やっぱりMTを3.36に戻しました

2009年2月18日(水) 01:45 | 日記

昨夜Movable Typeを苦労してバージョンアップさせましたが、やはりいろいろと不都合があって、一日で元に戻すことにしました。
もともとバージョン3.36に対して特に不満があったわけではないので、無理して4.23を入れる理由はありませんでした。だからこのサイトも、当分バージョン3.36で行きたいと思います。

以下、Movable Type(以下MT)を知らない人にとっては意味の分からない文章が続きます。ご容赦ください。

バージョン4.23の「不都合」は、次の2つでした。
1点めは、エントリーアーカイブでの日付の表示が、記事を書いた日ではなく、サイト全体の最新記事を書いた日付の表示になってしまうことです。
エントリーの日付についてはMTEntryDateタグで表記すれば問題ないのですが、Movable Typeの仕様として、通常のタグを使用して日付を表記すると「月や日の数字が1桁の場合、2桁めに0が付くか半角スペースが入る」という問題があって、細かいことが気になる僕は、それを回避するために「MT和風日付表示プラグイン」を使っています。ところが、このプラグインは基本的にMTDateタグと同じ役割を果たすのみで、MTEntryDateの代替としては使えないらしいんですよね。
MT3.3の場合は、エントリーアーカイブ内にMTDateタグを記述すれば、自動的にその記事が書かれた日付が表示されました。ところが4.23では仕様が変わってしまったらしく、MTDateはサイト全体の最新記事が書かれた日付を出力し、MTEntryDateは該当記事が書かれた日付を出力するものというように、エントリーアーカイブ内でのタグの役割が明確に分かれたようです。
エントリーアーカイブにおいて、記事が書かれた日付をMTDateタグで直接出力する方法は、いろいろ調べたのですが見つかりませんでした。

もう1点は、同じくエントリーアーカイブで、ページの右上に表示されるカレンダーの出力がうまくいかないことです。
該当記事が書かれた日時と同じ月のカレンダーを出力する目的で、MTCalendarタグに「month=this」というアトリビュートをつけているのですが、MT3.3では何の問題もなかったのに、MT4.2では再構築のときにエラーが出ます。アトリビュートを外すと再構築できますが、カレンダーは該当記事が書かれた日付に関係なく、最新の日記を書いた月のものに固定されてしまいます。
ただし、この現象はどうやら出力をダイナミックにすると起きないようです。再構築が必要なスタティックの場合のみ、不具合が発生するみたいです。
トップページと記事ページだけはすべてスタティックにするというのがポリシーなので、それを曲げてまでMT4.2に固執したくはありません。

このほか、きのうも書きましたが、携帯版のサイト(MT4iのバージョン3.0.6)の表示が、バージョンアップでやたら重くなったことも、MT4.2をあきらめる原因のひとつになりました。
結果的に、僕にとってMTのバージョンアップは便利な点より不便な点の方が多くなりました。MT4.2の利点は、サイト内検索がやたら速いことくらい。肝心のブログとしての機能は不十分だと思いました。とはいえ、僕のタグの記述が悪かっただけかもしれませんが…。

MTをバージョン3.36に戻したついでに、エントリーアーカイブなどテンプレートの一部を改変しました。その効果が出たのか、これまで3200本以上の記事をすべて再構築するのに13分ほどかかっていたところ、さっき試してみたら8分ちょっとで再構築が終わりました。もっとも前者はCRONで、後者は手動で再構築を行ったため、単純比較はできないかもしれませんが。

そんなわけで、今後もMT3.36を使い続けることにしたいと思います。

コメントを投稿

※サーバーの状況によって、投稿完了まで時間がかかることがあります。
※投稿内容がすぐに反映されないことがありますが、ページを再読み込みするとコメントが表示されます。
※入力したURLは公開されますが、メールアドレスは公開されません(管理者に対してのみ通知されます)。