首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

[原创] Magento 上订单时进行其它 DB 操作

2012-11-11 
[原创] Magento 下订单时进行其它 DB 操作  在 Magento 中,如果希望用户下订单时(也就是进行 Place Order

[原创] Magento 下订单时进行其它 DB 操作
  在 Magento 中,如果希望用户下订单时(也就是进行 Place Order 时),进行其它 DB 操作,下面是一种解决方案。不过需要注意的是,此种方案不是最好的方案,因为它直接修改了系统 core 下的文件,不便于系统升级,所以在实际使用时,需要特别留意这一点。

  测试时使用的 Magento 版本是 1.7.0.2。

  首先找到如下文件:
app\code\core\Mage\Sales\Model\Convert\Quote.php

  找到 itemToOrderItem 方法(Line 126),在这个方法里就可以进行其它 DB 操作了。例如,修改商品的 Custom Option:

$product = Mage::getModel('catalog/product');    $product->load($item->getProductId());        $i = 1;    foreach ($product->getOptions() as $o) {    $values = $o->getValues();foreach ($values as $v) {$rand = 3;$v["sort_order"] = $rand;$v->setOption($o)->save();}$i++; }


FYI:
http://stackoverflow.com/questions/5743456/how-does-magento-save-ordered-products-in-database

热点排行