我正在使用“自定义列表”扩展程序(github.com/openstream/CustomListing/),它允许创建CMS页面,如所有特价商品价格产品列表,畅销产品列表等等。
但它不能做我需要做的事情。 我需要列出所有库存产品。这是我的php请求:
if (is_null($this->_productCollection)) {
$this->_productCollection = Mage::getResourceModel('reports/product_collection');
$this->_productCollection->joinField('inventory_in_stock', 'cataloginventory_stock_item', 'is_in_stock', 'product_id=entity_id','is_in_stock>=1', 'left')
->addAttributeToSelect('*')
->addStoreFilter();
}
return $this->_productCollection;
此请求有效,但结果错误。 它显示所有产品,所有库存和所有缺货产品。 有人知道我的请求有什么问题吗? 谢谢你的帮助 ! 我的magento版本是:Community Edition 1.7.0.2
答案 0 :(得分:0)
以下代码段会向您返回状态为'启用'的类别的产品。 ,可见性'目录,搜索'和库存可用性'有货'。
$productDetails = Mage::getModel('catalog/category')->load($cat_id)
->getProductCollection()
->addAttributeToSelect('*');
$productDetails->addAttributeToFilter('visibility', array('in' => array(4) ));
$productDetails->addAttributeToFilter('status', array('in' => array(1) ));
$productDetails->joinField('is_in_stock',
'cataloginventory/stock_item',
'is_in_stock',
'product_id=entity_id',
'is_in_stock=1',
'{{table}}.stock_id=1',
'left');