Re: レガシーフォームを複数使用する場合のメールテンプレートについて
2021年8月27日 at 21:24
こんにちは。
あと、ブロック名 = メールテンプレート名にする方法もあります。
きちんと正しいブロック名をいれないといけなく、間違うとエラーになっちゃうので危険ですが・・・
$emailTemplate = $this->block->getBlockName();
// 管理者向け
$mh->load($emailTemplate);
// ユーザー向け
$mh->load($emailTemplate."_reply");
として、
applicaiton/mail/sampleform.php
applicaiton/mail/sampleform_reply.php
のメールテンプレートを使うようにするということもできます。
こうすると、メールのテンプレートを増やすだけで controller.php の改修をしなくて済みます。
パターンが多い場合はこちらがいいかもです。
Your post has been saved and will be published after approval by the forum moderator.
Tomoyuki Oiwa
Re: レガシーフォームを複数使用する場合のメールテンプレートについて
ありがとうございます。
それぞれ違うブロック名をつけた2つのレガシーフォームを設置しテストしたところうまくいきました。
(↓分からない人のために)
Katzさんの「標準のメールフォームに確認メール送信機能とCSVを Shift JIS に変換する機能を追加する」
http://github.com/katzueno/c5-form-support-Japanese-style
を使わせていただき、そのレガシーフォームのcontroller.phpに
$emailTemplate = $this->block->getBlockName();
を足して
$mh->load('block_form_submission_user'); を $mh->load($emailTemplate."_reply"); に変更
※↑このcontroller.phpの変更済みスクリーンショットを添付してます。
applicaiton/mail/sampleform_reply.php
を設置し、該当のレガシーフォームのブロック名をsampleformにする。
applicaiton/mail/exampleform_reply.php
を設置し、先ほどとは別のレガシーフォームのブロック名をexampleformにする。
ただ、Katzさんがおっしゃるように正しいブロック名を入れないとエラーになるし、ブロック名を入れずにレガシーフォームを設置すればそれもエラーになりますね。