php选择不同店发送不同邮件,Cakephp以不同的用户选择语言发送电子邮件

我想发送有关网络语言的特定语言的电子邮件.

例如,当用户注册时,他有可能选择一种语言,例如英语 – en,意大利语 – 它,德语 – 德语和法语 – fr.

该网站是多语言的,所以我想做的是当用户填写表格例如联系表格时,在他提交表格后,会向他发送一封电子邮件.

所以我们假设他选择意大利语作为该网站的语言,但当他注册时,他选择了英语.所以即使该网站是意大利语,也应该用英语发送电子邮件.

使用.pot文件通过cakephp的__()函数翻译电子邮件.

电邮模板是这样的:

contact_us_user

echo __('SITENAME');

?>

echo "

";

if (isset($firstname) && isset($lastname) && isset($title)) {

echo __('Hello %s %s.', $firstname, $lastname);

} else {

echo __('Hello');

}

echo "";

echo __('Thank you for contacting us!');

echo "
";

echo __('We will take a look to your reservation enquiry and we will get back to you with a booking quote');

echo "
";

echo "


";

echo __('

Thanks and Regards.

');

?>

而发送电子邮件的功能是这样的:

/* SEND MESSAGE TO THE USER */

$layout = 'default';

$template = 'contact_us_user';

$subject = __('TEST');

$title_for_layout = __('Contact US');

$viewVars = array(

"firstname" => $this->request->data['Contact']['name'],

"lastname" => $this->request->data['Contact']['surname'],

);

if(isset($this->request->data['Contact']['email']) && !empty($this->request->data['Contact']['email']) && trim($this->request->data['Contact']['email'])!='') {

$this->__sendEmail($this->request->data['Contact']['email'], $subject, $template, $viewVars, $layout, $title_for_layout);

}

方法如下:

/**

* send E-mail method

*

* @return boolean

*/

public function __sendEmail($emailTo, $subject = 'Email', $template = 'default', $viewVars, $layout = 'default', $title_for_layout = 'test') {

$this->set('title_for_layout', $title_for_layout);

App::uses('CakeEmail', 'Network/Email');

$Email = new CakeEmail();

$Email->template($template, $layout)

->emailFormat('html')

->viewVars($viewVars)

->from(array('info@sitename.com'=>'sitename.com'))

->to($emailTo)

->subject($subject);

return $Email->send();

}

所以我要问的是,是否有一种方法或参数传递给电子邮件,以表明我希望以哪种语言发送电子邮件.

类似的东西:$language =’en’;

我的Cakephp版本是:2.5.6

提前致谢.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值