Movable Typeブログ

ホーム » Movable Type » Movable Typeブログ » A-Form:ユーザーの入力値によって自動返信メールの内容を出し分ける方法

Movable Typeブログ

A-Form:ユーザーの入力値によって自動返信メールの内容を出し分ける方法

「<イベント参加申し込みフォーム>で、ある属性によって参加費が違う場合に、自動返信メールでそれぞれの属性にあわせた金額を差し込むことは可能でしょうか?」というお問い合わせをいただきました。

A-Formでは, 管理者宛ておよびエンドユーザ宛て自動返信メールのそれぞれについて独立でテンプレートファイルを持っています。このテンプレート内で, MTタグを使ってユーザ入力値を取得したり, 入力値によって表示の出し分けたりすることができます。

例として, 下図はA-Formの編集画面です。
テンプレートの出し分けで使いたいので, パーツIDには明示的に名前を振っています。
今回は, "参加イベント"(パーツIDは event にしました) の入力値によって参加費表示を変えるように書いてみます。

自動返信メールの内容をユーザ入力値で出し分けするサンプル(AForm編集画面側)

A-Formの自動返信メールのテンプレートは, 下記に用意されています。

  • ユーザ宛て用 plugins/AForm/tmpl/mail_aform_customer.tmpl
  • 管理者宛用 plugins/AForm/tmpl/mail_aform_admin.tmpl

基本的にはこれらを書き換えれば良いのですが, そうすると全てのフォームに同じ出し分けが適用されてしまいます。
今回は, 特定のイベント受付フォーム(aform036)のユーザ宛メールにだけ適用したいと想定します。

特定のフォームにのみ適用する場合は, そのフォームIDの番号でディレクトリを作って元になるテンプレートをコピーし,コピー側を編集します。

今回ならaform036なので, ↓このファイルを編集します。

plugins/AForm/tmpl/036/mail_aform_customer.tmpl
...................^^^.........................

前置きが長くなりました ^^;
中身はこのように書きます。
入力フィールドを mt:loop で順次取得します。パーツID(parts_id)値が event であれば, その入力値(label_value)を見て, 1000円/5000円/0円(例外処理)に出し分けします。

<mt:loop name="fields">
    <mt:If name="parts_id" eq="event">あなたの参加費は, 
        <mt:If name="label_value" like="セミナーのみ">1,000
        <mt:ElseIf like="セミナーと懇親会">5,000
        <mt:Else>0
        </mt:If>円です♪
    </mt:If>
</mt:loop>

※読みやすさのために改行を入れていますが,実際は改行なでmt:loop全体を1行に納めてください。出力がそのままテキストメールに差し込まれるしくみのため, loop内に改行を挟むとメール本文に余分な空行が入ってしまいます。

届いたメールには,

あなたの参加費は, 5,000円です♪

のように書かれるはずです。

今回は, パーツIDによって判別しましたが, パーツの種別で判別することもできます。

例えば見出しパーツのみ,自動返信メール内に書き出さないようにしたいなら次のように書きます。
モディファイア type でそのパーツの種別が取得できます。

	<mt:loop name="fields">
    <mt:Unless name="type" eq="label">do something...(ただし見だしパーツを除く)</mt:Unless>
</mt:loop>

各パーツごとの値は次の通りです。

定番パーツtype名(eq="xxxxx"部分)
メールアドレスemail
郵便番号zipcode
都道府県prefecture
電話番号tel
URLurl
個人情報保護方針privacy
カレンダーcalendar
氏名name
氏名フリガナkana
基本パーツtype名(eq="xxxxx"部分)
見出しlabel
コメント・注釈note
テキストtext
複数行テキストtextarea
ドロップダウンリストselect
チェックボックスcheckbox
ラジオボタンradio
ファイルアップロードupload
外部パラメータparameter
パスワードpassword

投稿者:ARK-Web | 投稿日:2013年6月25日 12:31 | このエントリをはてなブックマークに登録 | delicious_s.gif | このエントリをRetweetする

コメントする


フォーム作成プラグイン A-Form

会員制サイト構築プラグイン A-Member

予約サイト構築プラグイン A-Reserve

アーカイブ

MTによるサイト構築はこちら

アークウェブはシックス・アパート ProNet Japanのメンバーです。
Movable Typeなどシックス・アパート製品のシステム導入や構築を手がけるパートナー企業のネットワークに参加しています。



サービスおよびソリューション一覧

最新情報・投稿をチェック


このページのトップに戻る

Photo by ....

Powered by Movable Type Pro