株式会社ぺいじず

2020.10.21

Movable Type:連番のカスタムフィールドを for でループする

連番のカスタムフィールドが10個以上あったのでループできないかなと思ったらできました。
藤本壱様ありがとうございます!

▼藤本壱様:実行するテンプレートタグを変数で指定する
https://www.h-fj.com/blog/archives/2012/11/13-163510.php

私は <table> にしなくてはいけなかったので下記にしました。
カスタムフィールドのタグは、EntryHoge01~EntryHoge10 とします。

<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">
		<tr>
			<td><img src="/files/ico_hoge_<mt:Var name="x" zero_pad="2">.png" alt=""></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>

※私はタブ派なので「regex_replace=”/\t/mg”,””」ですが、スペース派の方は「trim=”1″」にすればよいかと。

※カスタムフィールドの名前を出力したかったのですが、処理が重そうなので見送りしました。結局やった
 ▼小粋空間様:特定のカスタムフィールドの情報を出力する
 http://www.koikikukan.com/archives/2010/04/16-003030.php

※<mt:ContentField content_field=”foo”> は、foo に変数が使用できるので、タグを変数にしなくてOKです。

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

関連記事

株式会社ぺいじず

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