1

我在 Magento 中有一个分组产品。在显示与组关联的项目之前,我想确保每个关联的产品都是可销售的。我正在通过在简单产品的管理员中切换“启用/禁用”状态进行测试。

$sku = 'SKU1234'; // grouped product
$cpm = Mage::getModel('catalog/product');

$grouped_product = $cpm->load($cpm->getIdBySku($sku));
$associated = $cpm->getTypeInstance(true)->getAssociatedProducts($grouped_product);

foreach ($associated as $a_p) echo $a_p->isSaleable();

无论关联产品的禁用/启用状态如何,上面总是为每个关联产品打印一个“1”,而我希望“禁用”为“2”。

我错过了什么?

谢谢你的帮助

4

1 回答 1

0

有时该echo命令在输出页面上无法正常工作。

尝试在后端启用日志系统并使用 log 命令:

Mage::log($a_p->isSaleable());

还尝试记录 $associated 数组以获取有关返回类的更多信息。也许你不能使用

$a_p->isSaleable();

你必须使用

$a_p->getProduct()->isSaleable();
于 2013-01-27T21:00:20.993 回答