LPO検索→
MovabletypeドキュメントBlogからのエントリーで条件分岐で行う効率的なテンプレート管理 - テンプレートの判別 | MovableType.jpより
Movabletype4で条件分岐を使ってテンプレートを変えるということができる。
例えばこんな感じになる
<MTSetVarBlock name="catList"><$MTEntryCategory$></MTSetVarBlock> <MTIf name="catList" eq="AAA"> <$MTInclude module="AAA"$> <MTElse> <MTIf name="catList" eq="BBB"> <$MTInclude module="BBB"$> <MTElse> <$MTInclude module="CCC"$> </MTIf> </MTIf> </MTEntries>
カテゴリーがわかっている場合、カテゴリーが3パターンあり、
カテゴリー名が「AAA」「BBB」「CCC」で条件分岐できる。
<MTSetVarBlock name="catList">name</MTSetVarBlock>
MTSetVarBlockで囲んだタグについての変数をあとからのifで条件分岐する
どうやっておこうなうか?
MT4からの新しいテンプレートタグが必要。
条件分岐に必要なテンプレートタグ
MTIf
条件文の対象となる MTSetVar ファンクションタグに設定した変数、または MTSetVarBlock, MTSetVarTemplate ブロックタグの変数を利用して条件文を作成します。MTIf ブロックタグは条件を満たした場合にのみ実行します。MTUnless は MTIf の逆で条件を満たさない場合にのみ実行します。
MTIf ブロックの中で MTUnless の結果と同じ結果を得たい場合は MTElse ブロックタグと組み合わせることで、条件を満たさない場合の実行内容も設定できます。
attribute(属性)がいくつかあるのでついでに
name ="値" 変数の基本値の設定ですね。ここで設定される値の真偽などで条件分岐される。
like="値" これは、like指定した値が含まれる場合に条件分岐される。正規表現も指定できる。
Perlの正規表現:
値で始まる場合を指定:"値" like="^(値|atai)"
値or ataiで始まる場合のみに条件分岐される。

コメントする