在 magento 报告渲染器自定义中获取订购数量

get ordered quantity in magento report renderer custom

我想获取产品的订购数量。我可以得到sku、名称、价格等。但是我无法得到订购的数量。 这就是我目前的情况:

public function render(Varien_Object $row)
{ 
    $sku = Mage::getModel("catalog/product")->load($row->getId())->getSku();
    $price = Mage::getModel("catalog/product")->load($row->getId())->getPrice();
    $quantity = Mage::getModel("catalog/product")->load($row->getId())->getQtyOrdered();
}

请帮忙!

以下是您可以这样做的方法:

$orderedQty = 0;
$report = Mage::getResourceModel('reports/product_sold_collection')
->addOrderedQty() //you can also filter by date range, like ->addOrderedQty($from, $to) with proper SQL dates
->addIdFilter($row->getId())
->getFirstItem();

if ($report) {
    $orderedQty = $report->getOrderedQty();
}

此外,您可能想深入研究 类 Mage_Reports_Model_Resource_Product_Sold_CollectionMage_Reports_Model_Resource_Product_Collection,您会在其中找到一些有趣的自解释方法,例如:

public function setDateRange($from, $to)
public function setStoreIds($storeIds)
public function addOrdersCount($from = '', $to = '')