【问题标题】:How to send an email to multiple receivers in opencart?如何在opencart中向多个收件人发送电子邮件?
【发布时间】:2013-11-10 07:09:18
【问题描述】:

这就是我目前向商店的(两个)管理员发送通知的方式

$mail = new Mail();
$mail->protocol = $this->config->get('config_mail_protocol');
$mail->parameter = $this->config->get('config_mail_parameter');
$mail->hostname = $this->config->get('config_smtp_host');
$mail->username = $this->config->get('config_smtp_username');
$mail->password = $this->config->get('config_smtp_password');
$mail->port = $this->config->get('config_smtp_port');
$mail->timeout = $this->config->get('config_smtp_timeout');     

$mailText = html_entity_decode($mailText,ENT_QUOTES, 'UTF-8');
/* Email para el admins Alcudia */
$mail->setFrom($this->request->post['email']);
$mail->setSender($this->request->post['name']);
$mail->setTo($admin_alcudia);
$mail->setSubject(html_entity_decode('Se ha realizado una solicitud de reserva', ENT_QUOTES, 'UTF-8'));
$mail->setHtml($mailText);
$mail->send();
/* Email para el admin de palma */
$mail->setFrom($this->request->post['email']);
$mail->setSender($this->request->post['name']);
$mail->setTo($admin_palma);
$mail->setSubject(html_entity_decode('Se ha realizado una solicitud de reserva', ENT_QUOTES, 'UTF-8'));
$mail->setHtml($mailText);
$mail->send();

问题是他们说第二个没有收到它......

知道如何改进吗?有 CC 功能吗?

我已经等了一整天了,但http://docs.opencart.com/ 不会复活..

【问题讨论】:

  • 我猜 docs.opencart.com 已经关闭,将被 support.opencart.com...
  • 如果您查看一些发送电子邮件通知的 OpenCart 的 PHP 代码,您会发现在 OpenCart 中完成此操作是多么容易。那么CTRL+CCTRL+V 是你唯一需要的东西......

标签: php email opencart carbon-copy


【解决方案1】:

尝试在字符串中用逗号分隔sendTo() 函数:

$mail = new Mail();

$mail->protocol = $this->config->get('config_mail_protocol');
$mail->parameter = $this->config->get('config_mail_parameter');
$mail->hostname = $this->config->get('config_smtp_host');
$mail->username = $this->config->get('config_smtp_username');
$mail->password = $this->config->get('config_smtp_password');
$mail->port = $this->config->get('config_smtp_port');
$mail->timeout = $this->config->get('config_smtp_timeout');     

$mailText = html_entity_decode($mailText,ENT_QUOTES, 'UTF-8');

$mail->setFrom($this->request->post['email']);
$mail->setSender($this->request->post['name']);
$mail->setTo($admin_alcudia.','.$admin_palma);
$mail->setSubject(html_entity_decode('Se ha realizado una solicitud de reserva', ENT_QUOTES, 'UTF-8'));
$mail->setHtml($mailText);

$mail->send();

这应该消除重复代码的需要。

【讨论】:

  • 没问题。如果它对您有帮助,您应该继续接受答案:)
【解决方案2】:

在 OpenCart 2.x 中,您需要将数组传递给 setTo() 方法。

$mail->setTo(array(0 => 'name@domain.com', 1 => 'name2@domain.com'));

【讨论】:

    【解决方案3】:

    另一种选择是不必修改任何代码并在设置中更改它,

    如果您进入系统,然后进入设置,然后单击商店上的编辑,它将打开您商店的设置...

    然后您需要转到邮件选项卡,然后向下滚动到“附加警报电子邮件”文本框,然后只需添加附加电子邮件地址

    无需更改编码...

    希望这会有所帮助,

    【讨论】:

    • 谢谢 - 这正是我想要的。不知道为什么这被标记了。
    猜你喜欢
    • 2019-03-01
    • 2012-05-18
    • 2019-04-22
    • 2015-01-08
    • 1970-01-01
    • 1970-01-01
    • 2017-12-05
    相关资源
    最近更新 更多