首页 文章

仅显示Magento目录页面上可配置产品的库存选项

提问于
浏览
2

我已经设法使用以下代码在我的目录页面上为可配置产品添加选项:http://www.magentocommerce.com/boards/viewthread/21039/P45/#t167724 . 我现在要做的只是根据选项所来自的简单产品的库存显示可用的选项 .

例如,如果我有一件有各种颜色(简单产品)的T恤(可配置产品)且我的红色缺货,则在显示可配置产品时,红色不会显示为选项 .

最好的方法是什么?

Update: 为了清楚起见,这里是我发布的链接的相关代码块 .

<?php if($product->getTypeId() == "configurable"): ?>
    <?php $attValConfig = $product->getTypeInstance()->getConfigurableAttributesAsArray(); ?>
    <?php if(sizeof($attValConfig)): ?>
        <?php foreach($attValConfig as $attValConfigSingle): ?>
            <fieldset class="product-options" id="product-options-wrapper">
                <label><?php echo $attValConfigSingle['label']; ?>:</label>
                <select name="super_attribute[<?php echo $attValConfigSingle['attribute_id'] ?>]" id="attribute<?php echo $_product->getId() ?>" class="required-entry super-attribute-select">
                    <?php foreach($attValConfigSingle['values'] as $attValConfigSingleVal): ?> 
                        <option value="<?php echo $attValConfigSingleVal['value_index'] ?>"><?php echo $attValConfigSingleVal['label'] ?></option>
                    <?php endforeach; ?>
                </select>
            </fieldset>
        <?php endforeach; ?>
    <?php endif; ?>
<?php endif; ?>

由于此代码只是获取所有可配置选项并显示它们,因此它不会检查支持可配置选项的简单产品是否有库存 . 我该怎么做呢?

2 回答

  • 0

    尝试以下(做你想要的返回结果):

    $_productCollection = Mage::getModel('cataloginventory/stock_item')->getCollection()
        ->addIdFilter($productId) // this line is wrong, don't care this
        ->addFieldToFilter('qty', array('gteq' => 1));
    
  • 1

    我只是想知道为什么我们要检查库存状态的数量为什么我们不能看看简单产品的库存情况 .

    我已经实现了根据库存状态显示可配置产品的缺货情况 . 现在您可以通过简单产品的库存可用性属性制作产品“库存”和“库存” .

相关问题