2012-09-24 112 views
3

我正在magento上工作。我想添加一項功能,當用戶下訂單時,評論會添加到訂單的歷史評論中。我已經通過代碼,並知道功能發表評論訂購magento

public function addStatusHistoryComment($comment, $status = false) 

在order.php用於添加評論。我想在用戶下訂單時訪問它。那我該怎麼做?有沒有人有任何想法?

回答

4

與Magento中的任何東西一樣,有很多方法。

首先你需要編寫一個模塊。在該模塊中,您可以監聽結帳成功事件 - checkout_onepage_controller_success_action。做到這一點與模塊等/ config.xml中,e.g:

<events> 
     <checkout_onepage_controller_success_action> 
      <observers> 
       <whatever> 
        <type>singleton</type> 
        <class>whatever/observer</class> 
        <method>checkout_onepage_controller_success_action</method> 
       </whatever> 
      </observers> 
     </checkout_onepage_controller_success_action> 
    </events> 

在你的觀察,你將最後一個順序,追加到它的註釋,然後保存您的訂單。您描述的方法將完美運作。你也可以做的事情有訂單狀態,這樣做使您可以通過電子郵件客戶如果需要的話:

public function checkout_onepage_controller_success_action($observer) { 
    $orderIds=$observer->getData('order_ids'); 
    foreach ($orderIds as $orderId) { 
     $order = new Mage_Sales_Model_Order(); 
     $order->load($orderId); 

     ... Do Something! 

     $order->setState('processing', 'invoiced', 'Hello World!'); 
     $order->save(); 
    } 

我希望幫助!

+0

我有我的會話中的數據。那麼我如何訪問並將其附加到評論? – MJQ

+0

不知道我可以幫助你進一步不知道更多的細節。 – Theodores

+0

隨着數據與會話一起傳輸,所以我有一個會話變量中的數據。當用戶完成訂單時,我想從會話中檢索數據並將其追加到訂單管理面板中看到的評論。所以我需要知道我該怎麼做? – MJQ