在我的情况下,可配置的简单产品缺货,它不会显示在可配置的产品选项列表下。它对我来说很好。但是,当所有选项都缺货时,我如何隐藏可配置产品?在这种情况下,可配置产品不显示addtocart按钮和选项下拉列表。但是如果在此下没有选项,我需要隐藏总的可配置产品。
谢谢, 穆拉利
答案 0 :(得分:5)
这适用于我(版本1.7.0.2),具有以下配置:
这样,当所有选项都售罄时,主产品就会被隐藏。
答案 1 :(得分:1)
一种解决方案是编写一个观察者来捕获catalog_controller_product_init_after
事件。您可以从观察者通过Mage::registry('product');
通过致电($product->getTypeId() == 'configurable')
检查产品是否可配置。如果它是可配置产品,您可以通过执行
$simples = $product->getTypeInstance(true)->getUsedProducts(null, $product);
$confHasStock = false;
foreach ($simples as $simple) {
if ($simple->getStockItem()->getData('qty') > 0) {
$confHasStock = true;
break;
}
}
如果变量$ confHasStock仍为false,则执行404重定向或任何您认为适合“隐藏”该产品的内容。