Magento联系表单自定义

时间:2013-02-14 06:08:21

标签: magento customization

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

我刚刚将我的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键入变量,需要改为名称。

1 个答案:

答案 0 :(得分:1)

通过此修复感兴趣的人的答案。

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

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

亲切的问候,