當我按訂單號加載訂單時,返回的數組包含兩次相同的項目。Magento:爲什麼在這個變量中重複訂購的商品?
$order = Mage::getModel('sales/order')->loadByIncrementId(12345);
$orderItems = $order->getItemsCollection();
如果訂單包含一個項目,然後,count($orderItems)
將是2並且在每個陣列索引的內容將是idential。這是怎麼回事?
我嘗試了以下加載訂單,但它甚至沒有在Magento Enterprise 1.11.2.0上工作。
$order = Mage::getModel('sales/order')->load(12345);
$orderItems = $order->getAllItems()
您確定該腳本沒有執行兩次,例如由於重寫規則錯誤或重定向?檢查你的網絡服務器日誌,看看它是否被擊中兩次。 – 2012-07-29 00:29:08
嗯,我沒有在system.log中看到任何東西。執行兩次的腳本會如何導致這種情況? '$ order'的內容在創建時被複制。我已經嘗試在銷售確認頁面和PDF發票生成頁面上以這種方式加載訂單。在這兩種情況下,數組都在內容中被複制。所以,我現在正在做'if($ i%2 == 0)'來獲得獨特的項目,但我有一種感覺,當重複項不再存在時,這在某些時候肯定會失敗.. – musicliftsme 2012-07-29 00:58:02