フォームのファイル添付について確認画面やメール通知でファイル名を表示することはできますか?
テンプレート記述によってファイル名を表示できます。
フォームの確認画面の場合
フォームの確認画面では MTContactFormFileAsset タグの中で MTAssetLabel タグを使うとファイル名を出力できます。 下記はフォーム項目のテンプレートの修正例 (抜粋) です。
<mt:if tag="mtassetthumbnailurl">
<a href="<$mt:asseturl$>" target="_blank"><img src="<$mt:assetthumbnailurl width="200"$>" /></a>
<mt:else>
[<a href="<$mt:asseturl$>" target="_blank"><$MTAssetLabel$></a>]
</mt:else>
</mt:if>
メール通知の場合
フォームへの投稿時にファイル名も送信することで、メール通知のテンプレート中ではリクエストパラメータからファイル名を取得できます。
以下は、ファイル添付フォーム項目のベースネームが evidence の場合を例に説明します。
フォーム項目のテンプレート
下記はフォーム項目のテンプレートの修正例 (抜粋) です。
<mt:contactformfileasset id="$field_value">
<$mt:var name="_contact_form_file_asset_tmpl"$>
<input type="hidden" name="<mt:var name="field_basename" encode_html="1">name" value="<$MTAssetLabel encode_html="1"$>" />
</mt:contactformfileasset>
追記した記述があることでフォームへ投稿を行われたとき evidencename リクエストパラメータとしてファイル名が送信されます。
メール通知のテンプレート
メール通知のテンプレート中ではテンプレート変数 request.evidencename によってファイル名が出力できます。
<$MTVar name="request.evidencename"$>
下記はメール通知のテンプレートの修正例 (抜粋) です。
<mt:if name="field_loop">
--------------
<mt:loop name="field_loop">
<$mt:var name="field_label"$>:
<mt:if name="field_type" eq="date">
<$mt:var name="field_value" format_ts="1" replace=" 00:00",""$>
<mt:elseif name="field_type" eq="date-and-time">
<$mt:var name="field_value" format_ts="1"$>
<mt:elseif name="field_type" eq="file">
<mt:SetVarBLock name="field_filename">request.<$mt:var name="field_basename"$>name</mt:SetVarBlock>
<$mt:var name="$field_filename"$>
<mt:else>
<$mt:var name="field_value"$>
</mt:else>
</mt:if>
--------------
</mt:loop>
</mt:if>
※ 視認性を高めるためインデント、改行を調整しています