作成日:2018-01-31, 更新日:2018-01-31
基本
Ethnaは、まったく分からない。今のところ、勉強しようとも思わない。
でも、Ethnaを使ってメール送信する必要が出てきたのでそのメモ。
「/template/ja/mail」にテンプレートファイルをおく
▼仮に・・・「hello.tpl」としてテンプレートを用意
From: 〇〇〇@〇〇〇.〇〇〇
Subject:〇〇〇〇〇〇
{$username}様、こんにちは!
※変数は「{}」で囲む
▼メール送信させる
$ethnaMail =& new Ethna_MailSender($this->backend);
$ethnaMail->send('〇〇〇@〇〇〇',
'hello.tpl',
array(
'username' => 〇〇〇〇,
)
);
※送信先のメアド、テンプレートファイル名、テンプレート内で使う各変数の設定(配列)を引数にしている
「$this->backend」がどこからきているのかは知らないけど・・・
宛先を複数含めたい
ひとまずメモ。動作チェックはまだ。
メアドをカンマ区切りにすれば良いみたい。
$toMail = 'a123@abcd.ef,b456@abcd.ef,c789@abcd.ef'; $opt = array( 'username' => 〇〇〇〇, ); $ethnaMail =& new Ethna_MailSender($this->backend); $ethnaMail->send($toMail, 'hello.tpl', $opt);
CCやBCCの設定
ひとまずメモ。動作チェックはまだ。
テンプレートにヘッダ情報をいれることで対応可能っぽい
From: 〇〇〇@〇〇〇.〇〇〇
Subject:〇〇〇〇〇〇
Cc: 〇〇〇@〇〇〇.〇〇〇
Bcc: 〇〇〇@〇〇〇.〇〇〇
{$username}様、こんにちは!
条件によってCCを含める・含めない
テンプレート側でCCの条件分岐をつけてあげる
▼メール送信(CC指定)
$ethnaMail =& new Ethna_MailSender($this->backend);
$isCC = true;
$ethnaMail->send('〇〇〇@〇〇〇',
'hello.tpl',
array(
'username' => 〇〇〇〇,
'isCC' => $isCC,
)
);
▼メールテンプレート(hello.tpl)
From: 〇〇〇@〇〇〇.〇〇〇
Subject:〇〇〇〇〇〇
{if $isCC}Cc: 〇〇〇@〇〇〇.〇〇〇{/if}
{$username}様、こんにちは!