Movable Type で、HTMLファイルに出力される中身を指定・変更するための変数について。
予約変数を利用し条件分岐をおこなうことで、MTではテンプレートの種類やアーカイブごとに出力結果を変えるなどのカスタマイズが可能になる。
出力対象先(ファイル)を一度に複数指定する変数や単独指定するものなど種類が豊富。
予約変数の種類については下記ホームページやPDFを参照。
▶ arcive_variable.pdf(この表に記載された変数はほんの一部。)
(DL先URL http://www.movabletype.jp/documentation/files/arcive_variable.pdf)
【ホームページ画面】

例えば、次のように使うことで、「最近のブログ記事(ウィジェット)」の出力先を変更可能。
1 2 3 | <mt:If name="main_index"> <$mt:Include widget="最近のブログ記事"$> </mt:If> |
この場合、「最近のブログ記事(ウィジェット)」は、main_index(メインページ)にのみ出力される。
1 2 3 | <mt:If name="entry_archive"> <$mt:Include widget="最近のブログ記事"$> </mt:If> |
こうすると、「最近のブログ記事(ウィジェット)」は、entry_archive(個別のブログ記事)にのみ出力される。
条件分岐で行う効率的なテンプレート管理
予約変数の関わりで条件分岐についても。
次のウェブページで判りやすく説明されているので参照。
▶ 条件分岐で行う効率的なテンプレート管理 – テンプレートモジュール
【ホームページ画面】

例えば、さらに条件分岐を指定することで、予約変数による出力先を2段階に分けることが簡単にできます。(ブロックタグ)
1 2 3 4 5 6 | <mt:If name="main_index"> この文字は、main_index と判別されたテンプレートに有効。 <mt:Else> この文字は、main_index 以外のテンプレートに有効。 </mt:Else> </mt:If> |
また、条件分岐は部分的に利用することもできます。
1 2 | このテンプレートは main_index <mt:If name="main_index">ですね <mt:Else>ではないですね</mt:Else></mt:If>。 |
なお、Movable Type のテンプレートタグには、大文字・小文字の区別はなく、「mt」の後に「 : 」を入れても構わない。
従って、次に挙げたMovable Typeのテンプレートタグは、すべて同じものとみなされます。(個人的には一番下を推奨。)
- MTWEBSITENAME
- MTWebsiteName
- mtwebsitename
- MT:WebsiteName
- mt:WebsiteName


