MTElseIf
Movable Type 4.1より追加されたMTElseIfテンプレートタグは、MTElseIfテンプレートタグの拡張版です。ひとつのMTIfとあわせて用います。先頭のMTIfのnameモデファイアで指定した変数名を、多数の条件分岐にかけるためのブロックタグです。
サンプルコード
以下のサンプルコードでは、Number変数へ3という値を代入し、MTIfを含むMTElseIfで「もし、Number変数が1,2,3,4,5であったら」という条件分岐を行っています。eqモデファイアは、「指定した値が変数と同じであれば」という分岐を行うので、6行目のMTElseIfブロック内の条件分岐でひっかかり、そのMTElseIfブロック内のMTGetVarにてNumber変数の値、つまり3が出力されます。
1対多の条件分岐においては、MTElseよりはMTElseIfのほうがシンプルなコードとなります。
<MTSetVar name="Number" value="3">
<MTIf name="Number" eq="1">
<MTGetVar name="Number">は1です。
<MTElseIf eq="2">
<MTGetVar name="Number">は2です。
<MTElseIf eq="3">
<MTGetVar name="Number">は3です。
<MTElseIf eq="4">
<MTGetVar name="Number">は4です。
<MTElseIf eq="5">
<MTGetVar name="Number">は5です。
<MTElse>
<MTGetVar name="Number">は1,2,3,4,5ではありません。
</MTIf>
- カテゴリ:If系