2012-05-29 238 views
0

有没有人知道如何列出可配置产品中的缺货简单产品?例如,我有一个项目有几个属性,大小等。如果我有一定的大小缺货,它不会列在下拉列表中,我希望它仍然出现在这里,但也告诉客户它缺货。这可能吗?在可配置产品中显示“缺货”简单产品?

我试图与谷歌在许多可用的器官功能障碍综合征,但都失败

我使用Magento的1.6

来源http://www.magentocommerce.com/boards/viewthread/33550/

回答

2

不是100%肯定,但我认为你会实现你要通过修改Mage_Catalog_Block_Product_View_Type_Configurable行151:

if(!$this->_validateAttributeValue($attributeId, $value, $options)) { 
    $inStock = false; 
} 

后来的后来,在线路170,你可以includ E该标志的选项数组:

$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 
); 

然后,在前端: 应用程序\设计\前台\基地\ DEFAULT \模板\目录\产品\图\型号\选项\ configurable.php 你有$选项var其中存储股票标志 - 你可以用它来创建你的逻辑 我没有测试这个,所以确保它的工作

+0

没有它的不工作 –

+0

你现在已经在jsonconfig中,尝试看看为什么它不填充,在product.js ...祝你好运 – srgb

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的默认演示模板。它在下拉列表中显示一个简单的产品项目,但选择不可用。

相关问题