Внимание до версии opencart 2.0.3.x был БАГ
В конструктор библиотеки Mail передавалась строка вместо массива
В opencart 2.0.3.x баг пофиксили и расширили возможности
Раньше было:
$mail = new Mail($this->config->get('config_mail'));
И в новой версии выдает notice на этот баг код
Стало
$mail = new Mail();
if ($ver >= 203) {
$mail->protocol = $this->config->get('config_mail_protocol');
$mail->parameter = $this->config->get('config_mail_parameter');
$mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname');
$mail->smtp_username = $this->config->get('config_mail_smtp_username');
$mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8');
$mail->smtp_port = $this->config->get('config_mail_smtp_port');
$mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout');
}
От меня добавлено
if ($ver >= 203) {
Потому что в меньших версиях при добавлении этого кода - отсылка почты не будет работать
$mail->protocol = $this->config->get('config_mail_protocol');
$mail->parameter = $this->config->get('config_mail_parameter');
$mail->smtp_hostname = $this->config->get('config_mail_smtp_hostname');
$mail->smtp_username = $this->config->get('config_mail_smtp_username');
$mail->smtp_password = html_entity_decode($this->config->get('config_mail_smtp_password'), ENT_QUOTES, 'UTF-8');
$mail->smtp_port = $this->config->get('config_mail_smtp_port');
$mail->smtp_timeout = $this->config->get('config_mail_smtp_timeout');