Magento保存订单功能在哪里?

时间:2014-10-24 16:47:29

标签: php ajax magento

我正在检查几个小时进入magento文件。 现在我正在结帐一页/checkout/onepage/reviews/info.phtml,订单通过此调用保存到Ajax,

<script type="text/javascript">
//<![CDATA[
    review = new Review('<?php echo $this->getUrl('checkout/onepage/saveOrder', array('form_key' => Mage::getSingleton('core/session')->getFormKey())) ?>', '<?php echo $this->getUrl('checkout/onepage/success') ?>', $('checkout-agreements'));
//]]>
</script>

我是这个语法的新手,在一个页面模板文件夹中没有saveOrder文件,我需要破解saveOrder操作以将重定向从succes页面更改为支付网关并返回。 这种方法在哪里?我真的不明白这个对ajax的调用就像一个新的对象实例。

任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:5)

因此checkout/onepage/saveOrder是与module/controller/action对应的路线。所以这将映射到:

INSTALL_PATH/app/code/core/Mage/Checkout/controllers/OnepageController.php

,您要查找的方法是saveOrder

那说你不应该去黑客攻击核心文件。您可以通过观察者或类重写来覆盖功能。

答案 1 :(得分:1)

您好想要更好地破解保存顺序功能以使用

创建一个观察者

sales_order_save_after 要么 sales_order_invoice_save_before

事件。它不好直接写入magento核心文件。