有谁知道如何在可配置产品中列出缺货简易产品?例如,我有一个具有多个属性,大小等的项目。如果我有一定的尺寸缺货,它将不会在下拉列表中列出,我希望它仍然出现在这里,但也告诉客户它缺货。这可能吗?
我尝试过谷歌提供的许多mod,但都失败了
我正在使用magento 1.6
来源http://www.magentocommerce.com/boards/viewthread/33550/
答案 0 :(得分:3)
是的,效果很好。我在v1.9使用它,行计算有点不同。 第179行修改为
if(!$this->_validateAttributeValue($attributeId, $value, $options)) {
$inStock = false;
}
然后在第202行添加
'stock' => $inStock
并获取代码
$info['options'][] = array(
'id' => $value['value_index'],
'label' => $value['label'],
'price' => $configurablePrice,
'oldPrice' => $this->_prepareOldPrice($value['pricing_value'],$value['is_percent']),
'products' => $productsIndex,
'stock' => $inStock
);
app\design\frontend\base\default\template\catalog\product\view\type\options\configurable.php
在第29行之后指定
$inStock=false;
在v.1.9的默认演示模板上测试。它在下拉列表中显示了一个简单的产品项目,但选择不可用。
答案 1 :(得分:2)
不是100%肯定,但我认为你可以通过修改Mage_Catalog_Block_Product_View_Type_Configurable的第151行来达到你想要的效果:
if(!$this->_validateAttributeValue($attributeId, $value, $options)) {
$inStock = false;
}
然后,在第170行,您可以在选项数组中包含此标志:
$info['options'][] = array(
'id' => $value['value_index'],
'label' => $value['label'],
'price' => $configurablePrice,
'oldPrice' => $this->_preparePrice($value['pricing_value'], $value['is_percent']),
'products' => $productsIndex,
'stock' => $inStock
);
然后,在前端: 应用\设计\前端\基\默认\模板\目录\产品\视图\类型\选项\ configurable.php 你有$ options var存储stock标志 - 你可以用它来创建你的逻辑 我没有测试这个,所以确保它有效