MTEntries の tags モディファイア で変数を使ってハマる
エントリ一覧を取得する際、<MTEntries tags="@index"> のようにタグ指定すれば絞り込むことが出来る。
エントリ一覧を取得する部分を使いまわすためにテンプレート化するとき、タグ指定部分を <MTEntries tags="$var"> のようにすればテンプレートの呼び出し側から"$var"を与えることができるが、
<MTEntries tags="@$var OR @all">
のように指定すると、"$var"が文字列扱いになってしまい展開されない。
そんなときは、tags="" に最終的に突っ込みたい文字列全体をあらかじめ別の変数で展開しておけばよい模様。
<$mt:SetVar name="var" value="tagtext"$> <mt:SetVarBlock name="query">@<$mt:GetVar name="var"$> OR @all</mt:SetVarBlock> <mt:Entries tags="$query">
こうすると tags="$query" は tags="@tagtext OR @all" となる。
ややこしいなぁ。