gpt4 book ai didi

magento - Magento:按状态过滤产品

转载 作者:行者123 更新时间:2023-12-03 11:33:57 25 4
gpt4 key购买 nike

我在这里遇到一些严重的Magento问题。如预期的那样:

$products = Mage::getModel('catalog/category')->load($category_id)
->getProductCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('status', array('eq' => 1));

将为我的$ category_id返回所有启用的产品。但是这:
$products = Mage::getModel('catalog/category')->load($category_id)
->getProductCollection()
->addAttributeToSelect('*')
->addAttributeToFilter('status', array('eq' => 0));

不退回禁用的产品。我似乎找不到退回禁用产品的方法,也不知道为什么。

我已经试过了:
Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($products);

这本来应该有效,但显然已被弃用。

有谁知道如何将一个类别中的所有产品都启用和禁用?

最佳答案

不用担心,您只是被一个非常不寻常的常量定义所困住了^^。你试一试:

$products = Mage::getModel('catalog/category')->load($category_id)
->getProductCollection()
->addAttributeToSelect('*')
->addAttributeToFilter(
'status',
array('eq' => Mage_Catalog_Model_Product_Status::STATUS_DISABLED)
);

出于任何原因,Varien决定使用 STATUS_DISABLED的值定义此 2常量,而不是使用更直观(且常用的) 0的值。

关于magento - Magento:按状态过滤产品,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6651028/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com