Magento产品系列仅获取某些类别的产品

时间:2011-02-08 17:40:26

标签: php magento

我正在尝试获取仅具有某些类别的促销价的产品列表。现在我正在尝试使用产品集合来获取这些数据。我不确定如何仅限制特定类别的集合。以下是我到目前为止的情况:

$products = Mage::getModel('catalog/product')
    ->getCollection()
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('status', 1)
    ->addAttributeToFilter('visibility', 4)
    ->addAttributeToFilter('special_price', array('neq' => ""))
    ->addAttributeToFilter('discontinued', array('neq' => 1))
    ->setPageSize(10)
    ->setOrder('price', 'ASC')
    ;

已停用的属性是我们使用的自定义属性,因此产品不会显示,也不会显示404。

有没有办法使用产品模型并限制某些类别?

1 个答案:

答案 0 :(得分:5)

想出来。您从类别开始,从类别中获取产品集合,然后从那里进行优化。在代码中它看起来像这样:

$products = Mage::getModel('catalog/category')->load(410)
    ->getProductCollection()
    ->addAttributeToSelect('*')
    ->addAttributeToFilter('status', 1)
    ->addAttributeToFilter('visibility', 4)
    ->addAttributeToFilter('special_price', array('neq' => ""))
    ->addAttributeToFilter('discontinued', array('neq' => 1))
    ->setOrder('price', 'ASC')
    ;