PowerCMS™
2025年1月1日購入分よりライセンスの価格を改定いたします。
[ブログ] PowerCMS 6 でのアップデートまとめ を追加しました。
[新着情報] アルファサードの冬期休業について を追加しました。
[よくあるご質問] サポートサイトへ複数のアカウントを作成できますか? を追加しました。

MTLoop

MTLoop

HASH の配列を name モディファイアで指定すると、指定された HASH の内容に応じてブロックしたテンプレートを繰り返し処理します。

使い方

<MTSetHashVar name="month">
    <$MTSetVar name="Jan" value="January"$>
    <$MTSetVar name="Feb" value="February"$>
    <$MTSetVar name="Mar" value="March"$>
    <$MTSetVar name="Apr" value="April"$>
    <$MTSetVar name="May" value="May"$>
    <$MTSetVar name="Jun" value="June"$>
    <$MTSetVar name="Jul" value="July"$>
    <$MTSetVar name="Aug" value="August"$>
    <$MTSetVar name="Sep" value="September"$>
    <$MTSetVar name="Oct" value="Octber"$>
    <$MTSetVar name="Nov" value="November"$>
    <$MTSetVar name="Dec" value="December"$>
</MTSetHashVar>

<ul>
<MTLoop name="month" sort_by="value">
    <li><$MTVar name="__key__"$>: <$MTVar name="__value__"$></li>
</MTLoop>
</ul>

モディファイア

name="foo"

対象となる HASH 配列を指定します。

sort_by="key | value"

key モディファイアを指定するとハッシュのキーの文字列順で並べ替えます。value モディファイアを指定するとハッシュまたは配列の値の順で並べ替えます。key, value モディファイアには reverse サブモディファイアを設定できます。reverse サブモディファイアは名前の通り、順序を逆にします。value モディファイアには numeric サブモディファイアも指定できます。numeric サブモディファイアは、名前の通り、文字列ではなく数値比較を行います。

<MTLoop name="Offices" glue="," sort_by="value numeric reverse">
    <MTVar name="__value__">
</MTLoop>
glue

ループの出力の後に設定する区切り文字を指定します。区切り文字には ' (シングル・クォーテーション) や " (ダブル・クォーテーション) は使えません。

MTLoop と関連のあるテンプレートタグ (2)