浏览文章

文章信息

Magento2 过滤排除无库存产品集合collection|排除库存为零的产品集合|filter in stock product collection 12839

实例:

$collection = $productCollectionFactory->addAttributeToSelect('*')
            ->addStoreFilter($storeId)
            ->addCategoryFilter($category)
            ->addAttributeToFilter('visibility', \Magento\Catalog\Model\Product\Visibility::VISIBILITY_BOTH)
            ->addAttributeToFilter('status', \Magento\Catalog\Model\Product\Attribute\Source\Status::STATUS_ENABLED)
            ->addAttributeToSort('created_at', 'desc')
            ->addFinalPrice()
            ->addMinimalPrice()
            ->setCurPage($page)
            ->setPageSize($pageSize)
            ->joinField('qty',
                'cataloginventory_stock_item',
                'qty',
                'product_id=entity_id',
                '{{table}}.stock_id=1',
                'left'
            )->joinTable('cataloginventory_stock_item', 'product_id=entity_id', ['stock_status' => 'is_in_stock'])
            ->addAttributeToSelect('stock_status')
            ->addFieldToFilter('stock_status', ['eq' => 0])
            ->addAttributeToFilter('status', \Magento\Catalog\Model\Product\Attribute\Source\Status::STATUS_ENABLED)
            ->addAttributeToFilter('type_id', ['eq' => 'configurable'])->load();


原创