現在、一覧画面に記事の一覧を表示する機能をMovable Typeで実装中です。
その際、サムネイル画像を表示する必要があり、
記事編集にて、カスタムフィールド「EntryDataBodyImage1」に画像をアップロードすれば、
次のようにしてそれを表示します。
<mt:EntryDataBodyImage1Asset> <img src="<mt:AssetURL>" /> </mt:EntryDataBodyImage1Asset>
ここまでは公式リファレンスにもあるふつうのAssetタグの使い方だと思います。
問題はこの次で、この画像のカスタムフィールドは実際には3つ存在し、
常に1つ目の画像をサムネイルとして表示するとは限らず、
ラジオボタンのカスタムフィールド「EntryDataBodyImageNum」で選択した任意の番号のサムネイルを表示します。
つまり、次のような書き方です。
<mt:If tag="EntryDataBodyImageNum" eq="1"> <mt:EntryDataBodyImage1Asset> <img src="<mt:AssetURL>" /> </mt:EntryDataBodyImage1Asset> <mt:ElseIf eq="2"> <mt:EntryDataBodyImage2Asset> <img src="<mt:AssetURL>" /> </mt:EntryDataBodyImage2Asset> <mt:ElseIf eq="3"> <mt:EntryDataBodyImage3Asset> <img src="<mt:AssetURL>" /> </mt:EntryDataBodyImage3Asset> <mt:Else> <span>No Image</span> </mt:If>
EntryDataBodyImageNumには、0,1,2,3のどれかの値が入ります。
これをeqで条件分岐させるのではなく、PHPみたいに文字列結合してテンプレートタグとしたいです。
このようにすれば文字列結合した変数は作れますが…
<!-- 変数定義 --> <mt:SetVarBlock name="image_num" prepend="1"> ['EntryDataBodyImage', '<mt:EntryDataBodyImageNum>', 'Asset'] </mt:SetVarBlock> <!-- 変数呼び出し 出力例 EntryDataBodyImage1Asset EntryDataBodyImage2Asset EntryDataBodyImage3Asset --> <mt:Var name="image_num">
これをそのままテンプレートタグに使用すると、エラーになります。
(IF文には使用できます。)
<mt:If tag="$image_num"> <mt:$image_num> <img src="<mt:AssetURL>" /> </mt:$image_num> <mt:Else> <span>No Image</span> </mt:If>
テンプレートタグで、変数を使用するにはどうすればいいでしょうか?
ご教授の程よろしくお願いいたします。

回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。