在我的 opencart 模板中,我需要创建一个类似于联系人表单的表单,其中包含姓名、电子邮件和手机号码字段。我已经在"联系我们"页面中使用了默认的"联系我们"表单。我需要为另一个页面创建这个新表单。有没有可用的免费扩展?否则我们如何实现我们自己的形式?
我不打算推荐任何扩展(这不是这样做的地方),但我可以告诉你一些步骤复制联系人。
首先,您需要在各自的目录中复制三个文件
-
cataloglanguageenglishinformationcontact.php
-
catalogviewthemedefaulttemplateinformationcontact.tpl
-
catalogcontrollerinformationcontact.php
并将它们命名为form.php
、form.tpl
、form.php
在此之后的所有更改将仅对这些文件执行
现在将控制器类名称更改为ControllerInformationForm
除此之外,您还必须编辑控制器文件中的几件事,例如将contact.tpl
更改为form.tpl
,使用$this->language->load('information/form');
加载正确的语言文件
对控制器文件进行必要的更改后,可以使用website.com/index.php?route=information/form
访问新表单
现在,对于其他字段,请使用一个现有字段(如name
)并使用新字段执行这 3 个文件中name
所做的所有操作
注意不要为你做$mail->setSender($this->request->post['name']);
新领域它的不同
现在让 TPL 中您在 TPL 中拥有这样的新字段
<input type="text" name="city" value="<?php echo $city; ?>" />
然后在控制器中更改以下行
$mail->setText(strip_tags(html_entity_decode($this->request->post['enquiry'], ENT_QUOTES, 'UTF-8')));
自
$mail->setText(strip_tags(html_entity_decode($this->request->post['enquiry'] . " " . $this->request->post['city'], ENT_QUOTES, 'UTF-8')));
免责声明:这不是一套完整的说明,但这足以让您开始并在遇到任何问题时提出更好的问题