Reputation: 1563
I want to know how much orders are placed for a product. For this I'd like to use the following code but it does not give any output:
$order = Mage::getModel('sales/order');
$order_detail=$order->setStoreId($storeId)->getCollection()- >addAttributeToFilter('product_id',$product_id);
print_r($order_detail);
Please tell me where I am wrong?
Upvotes: 0
Views: 341
Reputation: 2466
Try this to make it work, you need to use the model Mage_Sales_Model_Order_Item and not Mage_Sales_Model_Order:
$order = Mage::getModel('sales/order_item');
$order_detail = $order->getCollection()
->addAttributeToFilter('store_id', Mage::app()->getStore()->getId())
->addAttributeToFilter('product_id', $product_id)
//->load(); // if you don't use $order_detail->getItems() below uncomment it
foreach ($order_detail->getItems() as $order){
echo $order->getId();
echo '<br>';
}
Upvotes: 1