株式会社ぺいじず

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">&lt;mt:EntryHoge<mt:Var name="x" zero_pad="2">&gt;</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>

本当はカスタムフィールドの名前も変数に軽くなりそうですが、できたから良し!

  • このエントリーをはてなブックマークに追加

関連記事

株式会社ぺいじず

私たちは、東京都千代田区で創業28年のWeb制作会社です。
長年のマニュアル制作で培われたライティングスキルを活かし、効果的なWebサイトをご提案しています。