2020.10.28
Movable Type:連番のカスタムフィールドを for でループして、カスタムフィールドの名前も表示する
前回の記事で、カスタムフィールドの名前を表示するの処理は重そうなので見送ったと書いたのですが、結局表示することになりました。
▼小粋空間様:特定のカスタムフィールドの情報を出力する
http://www.koikikukan.com/archives/2010/04/16-003030.php
カスタムフィールドのタグは、EntryHoge01~EntryHoge10、
ベースネームは、entryhoge01~entryhoge10 とします。
前回からの変更点は以下です。
・5行目でカスタムフィールドのベースネームを変数として設定
・7行目で alt にカスタムフィールドの名前を出力
<mt:For var="x" from="1" to="10" setvar="fuga">
<mt:SetVarBlock name="cf_hoge"><mt:EntryHoge<mt:Var name="x" zero_pad="2">></mt:SetVarBlock>
<mt:Var name="cf_hoge" decode_html="1" mteval="1" setvar="cf_hoge">
<mt:If name="cf_hoge">
<mt:Var name="x" zero_pad="2" regex_replace="/^/","entryhoge" setvar="cf_basename">
<tr>
<td><img src="/files/ico_hoge_<mt:Var name="x" zero_pad="2">.png" alt="<mt:EntryCustomFields><mt:If tag="CustomFieldBasename" eq="$cf_basename"><mt:EntryCustomFieldName></mt:If></mt:EntryCustomFields>"></td>
<td><mt:Var name="cf_hoge"></td>
</tr>
</mt:If>
</mt:For>
<mt:Var name="fuga" regex_replace="/\t/mg","" strip_linefeeds="1" setvar="fuga">
<mt:If name="fuga">
<table>
<tbody><mt:Var name="fuga"></tbody>
</table>
</mt:If>
本当はカスタムフィールドの名前も変数に軽くなりそうですが、できたから良し!