Greensleeves v2.0 / Tag: MovableType
Notes about things I'm interested in.
Tag: MovableType が付けられているエントリーが 5 件見つかりました。
MT 3.3 以降からタグがサポートされましたが、デフォルトではタグ検索のテンプレートは通常の検索テンプレートと一緒になっていて、<MTIfTagSearch> と <MTIfStraightSearch> で場合分けを行ってごにょごにょするので MT のタグを仕込むときにどうしても複雑になり、やたら苦労します(ただでさえ複雑なのにね)。
問題は Tag と通常の検索が一緒なっているから起こるので、単純に考えて分離してしまえば解決します。というわけでその方法を大まかですがメモして置こうと思います。
用意する Plugin
Ogawa Memoranda さんにて公開されている TagSupplementals Plugin は MT-XSearch をサポートしているのでテンプレートの分離はこれら 2 つをつかって行います。
MT-XSearch のインストールと下準備
ここで長々説明するよりも、TagwireとMT-XSearchによる動的タグアーカイブ - Ogawa::Memoranda のセットアップ方法の 1 と 2 にまとめられているのでそちらを参照してください。
テンプレートモジュールを作成
上記 2 つのプラグインのインストールが完了したら、XSearch TagSupplementals という名前のテンプレートモジュールを作成します。あとはタグ検索用のテンプレートをそこにガシガシ書いていくだけ。
2 つに分けると当然テンプレートも書きやすくなるし、メンテナンス性も向上してなかなか良い感じですね。
当サイトは将来 php などで動的生成したりすることになったとして、ファイルの拡張子を変更しなきゃならなくなった時 Permalink のリダイレクトなどで手間がかからないように URI の設計に所謂、クールな URI の思想を採用しています。
クールな URI の実現方法としては URI から拡張子を除去して、コンテントネゴシエーションを行うというものが有名です。この方法では .htaccess の Options +MultiViews が使えることが必須条件になります。
それじゃあ、クールな URI にしたいけど .htaccess が使えない、もしくは使えても Options +MultiViews 使えない鯖を借りてる人はどうするのさってことになるわけですが結構単純な方法で実現できたりします。
投稿時間を元に URI を決めるときを例にして説明すると例えば、2007/04/08 05:38 に投稿したとき。コンテントネゴシエーションが可能な場合以下のような URI の例が考えられます。
- http://www.example.com/2007/04/08/0538
さて、それじゃあ使えない場合の話なんですが…。
- http://www.example.com/2007/04/08/0538/
こうすればいいだけです。ファイルネームは index.ext (ext は任意の拡張子)に。例えば MT 3.34 のアーカイブマッピングでこれを実現するには
/%y/%m/%d/%h%n/%I%x
と書けばいいでしょう。
このディレクトリを使った Cool な URI は、CSS Beauty などでも Permalink に採用されています。というか、これらサイトの閲覧中に「あー、こういうやり方もあるわな。」と気がついてメモ代わりに書いたわけですが。
Google ウェブマスターツールを少し前に触ってみたんですが、Googlebot のクロールの具合が良く分かるようになって中々便利だったので、サイトマップファイルも食べさせてみようかと思いました。Google ウェブマスターツール | サイトマッププロトロルを使用する場合に詳細があるので、それを参考にさくっと MT で作ってみした。
0 Comment、1 Comments、2 Comments・・・と、テンプレート内で英語の後ろにきちんと複数形をつけたくても、MT にはデフォルトだと数による条件分岐タグは 0 かそうでないかを判別する MTIfNonZero タグくらいしかないためそれができません。別に細かいこと気にしなくていいならそれで OK なんですけど、変なところを気にする性格なものできちんとしてみようと思います。
v1.0 の寿命は、わずか 2 週間でした。早すぎだろ、常識的に考えて・・・。
とまぁ、先週末あたりに、Movable Type のテンプレートを作ろうと思って色々やってたら結構シンプルでよさげなのが出来たので入れ替えてみました。前回と違って画像ほとんど使ってません。Mini Pixel Icon から数個と blockquote の背景の引用符くらい。
とはいえマークアップの構造や、CSS の基本的な部分はほとんど一緒だったりしますが・・・。
まだ IE 5.5 と 5 で少しナビゲーション部分の表示が少しがおかしいのでそこを直して、あとはテンプレートにもう少し手を加えたら公開しようかなと思います。