Помогите, пожалуйста, сделать то же самое в 2.3. Сделал 90% из того, то указано. Но код сильно изменился с версии 1.5 и копипастом сделать ничего нельзя. Пытался адаптировать, но ума хватило не на все. Засыпался на 2 вещах, может быть связанных, и в итоге это одна вещь.
1. В форме обратной связи, а конкретно, внутри пустой незаполненной формы есть ошибка. Пустая переменная phone. В language она определена, делаю вывод, что ее не передает контроллер. См. аттач по ошибке. Код вывода в шаблоне темы:
<div class="form-group required">
<label class="col-sm-2 control-label" for="input-phone"><?php echo $entry_phone; ?></label>
<div class="col-sm-10">
<input type="text" name="phone" value="<?php echo $phone; ?>" id="input-phone" class="form-control" />
<?php if ($error_phone) { ?>
<div class="text-danger"><?php echo $error_phone; ?></div>
<?php } ?>
</div>
</div>
2. Самая основная проблема - не смог понять куда пристроить переменную 'phone' в контроллере:
if (($this->request->server['REQUEST_METHOD'] == 'POST') && $this->validate()) {
$mail = new Mail();
$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');
$mail->setTo($this->config->get('config_email'));
$mail->setFrom($this->request->post['email']);
$mail->setSender(html_entity_decode($this->request->post['name'], ENT_QUOTES, 'UTF-8'));
$mail->setSubject(html_entity_decode(sprintf($this->language->get('email_subject'), $this->request->post['name']), ENT_QUOTES, 'UTF-8'));
$mail->setText($this->request->post['enquiry']);
$mail->send();
$this->response->redirect($this->url->link('information/contact/success'));
}
C 'entry_phone' все понятно, а вот с 'phone' потыкался и не смог. Полный файл контроллера тоже аттачу.
contact.php