hash
属性は PowerCMS X ver.2.2 にて追加された属性で、多次元配列をループ処理するときの挙動が変わります。
連想配列を用意します。
<mt:block from_json="sample_array">
[
{
"path": "path/foo",
"label": "foo"
},
{
"path": "path/bar",
"label": "bar"
}
]
</mt:block>
連想配列のキーを指定することで値を直接取得できます。
<mt:loop name="sample_array">--------------------
path: <mt:var name="path">
label: <mt:var name="label">
__value__: <mt:vardump name="__value__">
</mt:loop>
※ __value__
には値がセットされません。
--------------------
path: path/foo
label: foo
__value__: NULL
--------------------
path: path/bar
label: bar
__value__: NULL
hash
属性を指定すると、__value__
に配列がセットされます。
<mt:loop name="sample_array" hash>--------------------
path: <mt:var name="__value__.path">
label: <mt:var name="__value__.label">
__value__: <mt:vardump name="__value__">
</mt:loop>
※ 連想配列のキーでは値を取得できません。
--------------------
path: path/foo
label: foo
__value__: array(2) {
["path"]=>
string(6) "path/foo"
["label"]=>
string(7) "foo"
}
--------------------
path: path/bar
label: bar
__value__: array(2) {
["path"]=>
string(6) "path/bar"
["label"]=>
string(7) "bar"
}
更新日:2025年05月19日
解決しなかった場合は
下記よりお問い合わせください