2013-04-25 82 views

回答

1

创建sales_order_place_after

<events> 
    <sales_order_place_after> 
     <observers> 
      <orderenteredby> 
       <type>singleton</type> 
       <class>orderenteredby/observer</class> 
       <method>implementOrderMethod</method> 
      </orderenteredby> 
     </observers> 
    </sales_order_place_after> 

观察员在Observer.php

class MagePal_OrderEnteredBy_Model_Observer 
{ 

    public function implementOrderMethod($event) 
    { 
     $_order = $event->getOrder(); 

     if($this->_isAdmin()){ 
      $_user = Mage::getSingleton('admin/session'); 
      $firstname = $_user->getUser()->getFirstname(); 
      $lastname = $_user->getUser()->getLastname(); 
      $enterBy = "Order entered by {$firstname} {$lastname}"; 
     } 
     else{ 
      $enterBy = 'Ordered Online'; 
     } 
     $_order->addStatusHistoryComment($enterBy) 
       ->setIsVisibleOnFront(false) 
       ->setIsCustomerNotified(false); 

     return $this; 
    } 

    protected function _isAdmin(){ 
     if(Mage::app()->getStore()->isAdmin()){ 
      return true; 
     } 

     if(Mage::getDesign()->getArea() == 'adminhtml'){ 
      return true; 
     } 

     return false; 
    } 
} 

有关如何创造出更多的信息观察者看到Change Magento default status for duplicated products

+0

感谢您的回答,任何机会就详细一点。 – Chesney 2013-05-01 01:00:08

+0

我在哪里添加代码段?提前致谢。 – Chesney 2013-05-01 01:00:46

+0

你需要创建一个自定义的magento模块...看看我的例子http://stackoverflow.com/questions/12677971/change-magento-default-status-for-duplicated-products – 2013-05-01 13:39:55

相关问题