Movable Type 備忘録
ブログの表示を条件で変える
- Prev Page: スタイルシートでRSSを見やすくする
- Next Page: Movable Type のエントリに絵文字を入れてみる
今日のカスタマイズはすごいですよ!! 今までで1番かゆいとこに手が届いたってかんじです。
MovableType(ムーバブルタイプ)に限ったことではありませんが、わたしはよくブログを作っていて、このエントリの背景は別にしたいとか、このカテゴリでは、レイアウトを変えたいとか…いろいろ無理なことを考えていたのですが、MovableType(ムーバブルタイプ)ではそれが可能なんです。
例えば、カテゴリ毎に背景を替えたり、エントリ毎にバナーを張り替えたりすることも可能なんです。
ブログはみなさんご存知の通り、共通なテンプレートを使用することで、本文のみ差し替わって表示されますよね。
だから、ページのイメージはすべていっしょになってしまいます。
SSIを使用すればできなくはないのですが、SSIだと動的な変更ができないんです。
どういうことかというと、仮にカテゴリID毎にページに変化を持たせたい…とした場合、カテゴリIDにあったHTMLをインクルード( HTMLにHTMLを組み込む )できないんです。
<!--#include virtual="category.html" -->
上記のコードは、一般的なHTMLにSSIを組み込むためのコードですが、下記のコードのようなカテゴリIDによって、組み込むHTMLを変えるみたいな使い方ができません。
<!--#include virtual="/category<$MTCategoryID$>.html"-->
たぶん、コメントとして認識されてしまうから、<$MTCategoryID$> タグは変換されないんでしょうね。
ざっとですが、わたしがやりたいことはそんなかんじのことです。
では、本題に入ります。
カスタマイズ方法
MovableType(ムーバブルタイプ)でページに動的な( 条件による )変化を持たすには、MTSwitchプラグインを使用します。
このプラグインは、ある特定の条件によって分岐させたい場合に使います。
先程の例のように、カテゴリIDによってバナー広告を替えるとか、サイドバーの内容を替えるなどです。
▼MTSwitchプラグインの入手はこちらから▼
http://virtuelvis.com/archives/2003/03/mtswitch
以下に、カテゴリ名による条件分岐をさせたい場合の構文を記します。
<MTSwitch value="[MTCategoryLabel]"><MTSwCase value="Aカテゴリ名">Aカテゴリ用のコードを書く</MTSwCase><MTSwCase value="Bカテゴリ名">Bカテゴリ用のコードを書く</MTSwCase><MTSwDefault>それ以外のカテゴリ用のコードを書く</MTSwDefault></MTSwitch>
上記例の1行目 <MTSwitch value="[MTCategoryLabel]"> の value= に対して条件を設定しています。
ここにはMovableType(ムーバブルタイプ)のすべての変数タグを指定できます。
上記例の2、6行目 <MTSwCase value="Bカテゴリ名"> の value= で条件に対する値を設定して、その値と合致したら以下のコードを使用する…という意味になります。
上記例の10行目 <MTSwDefault> には、すべての条件に合致しなかった場合のコードを入れます。
カンタンでしょ (●´∀`●)
<MTSwCase value="Aカテゴリ名">Aカテゴリ用のコードを書く</MTSwCase>
上記の部分を増やすことで、条件分岐を増やすことができます。
この条件タグを使えばバリエーションが増えますよねぇ。
Trackback Pings(1)
- from
Project MultiBurst
1ヶ月くらいまえから、del.icio.usのソーシャルブックマークをこのブログにエントリーするようにしたのですが、メインページでブックマークが並んでいる...
Comments(0)
No comments found.



Post a Comment