【问题标题】:Magento contact form customizationsMagento 联系表格自定义
【发布时间】:2013-02-14 06:08:20
【问题描述】:

我正在尝试在联系表单中添加几个字段,以便我的客户在编写时可以指明他们车辆的年份和型号。

我刚刚将我的 Magento 安装从 1.4.3 升级到了 1.7.0.1。我以前的联系表格是一项黑客工作,这次我试图让它以正确的方式工作。环顾四周,我尝试将<input type="text" size="15" value="" id="model_ext" name="bike_model_ext" class="required-entry input-text"> 添加到我的模板中的form.phtml 中,然后在管理员的事务电子邮件模板中添加{{var data.model_ext}}。但这不起作用。我通过操作文本确保后端的模板是正确的。我也知道 form.phtml 是正确的,因为当元素发生变化时我会看到它们。

然后我重载了处理联系表单的控制器。我确认我的控制器正在处理它(它带有echo "it works"; die();)在那里,我正在寻找额外表单元素名称的 POST 数据,但在这里,我也无法访问数据.环顾网络,我尝试了这个:

            $comment = $this->getRequest()->getPost('comment');
            $extras=Array( "year","make","model","model_ext" );
            foreach($extras as $field)
                    $comment .= "\n$field:\t".$this->getRequest()->getPost($field);
            $this->getRequest()->setParam('comment', $comment);
            parent::postAction();

但是,就像我的变量不存在一样。在这里,我再次知道我的代码正在执行,因为当我在那里出现任何错误时,联系表单会崩溃并显示错误消息。

我早上会再做一次,但希望有一些我想念的简单的东西,这里有更多经验的人可以帮助我。

编辑:回答我使用 ID 来键入变量,需要改为名称。

【问题讨论】:

  • 在帖子中它使用名称而不是 id:name="bike_model_ext" 考虑到这一点
  • 是的!谢谢你。这就是解决办法。回答,我会接受。

标签: magento customization


【解决方案1】:

对此修复感兴趣的人的答案。

表单生成的 $_POST 和 $_GET 值使用名称而不是 id。

在这种情况下,您必须使用 bike_model_ext 而不是 model_ext。

亲切的问候,

【讨论】:

    猜你喜欢
    • 2013-11-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-16
    • 2016-08-06
    • 1970-01-01
    • 2017-05-29
    • 1970-01-01
    • 2014-06-04
    相关资源
    最近更新 更多