2

请帮助...任何人

我有隐藏一些可配置属性的问题:

这些是我在后端的可配置属性:

  • 形状/类型
  • 砂砾和颜色
  • 物品包
  • 直径
  • 供应商

我的客户想在前端隐藏“制造商”属性,但想在后端导入供应商。

请查看我正在工作的网站:

http://ridental.com.au/newsite/polishers.html/

我设法通过添加一些这样的 if 语句从前端隐藏它:在app\design\frontend\default\MYTEMPLATE\template\catalog\product\view\type\options\configurable.phtml

<?php
$_product    = $this->getProduct();
$_attributes = Mage::helper('core')->decorateArray($this->getAllowAttributes());
?>
<?php if ($_product->isSaleable() && count($_attributes)):?>
<dl class="outer">
<dl class="inner">
<?php foreach($_attributes as $_attribute): ?>
<?php $attCode =   $_attribute->getProductAttribute()->getFrontend()->getAttribute()->getAttributeCode(); ?>

   <?php if($attCode != "manufacturer"):?>
    <div class="dtdd-wrapper<?php if ($_attribute->decoratedIsLast){echo " last";}?>">
    <dt><label class="required"><em>*</em><?php echo $_attribute->getLabel() ?></label></dt>
    <dd<?php if ($_attribute->decoratedIsLast){?> class="last"<?php }?>>
        <div class="input-box">
            <select name="super_attribute[<?php echo $_attribute->getAttributeId() ?>]" id="attribute<?php echo $_attribute->getAttributeId() ?>" class="required-entry super-attribute-select">
                <option><?php echo $this->__('Choose an Option...') ?></option>
              </select>
    </div>
    </dd>
    </div>
  <?php endif; ?>
<?php endforeach; ?>
</dl>
</dl>
<script type="text/javascript">
    [b]var spConfig = new Product.Config(<?php echo $this->getJsonConfig() ?>);[/b]
</script>

制造商不会显示在前端。

但是当我单击添加到购物车按钮时,我收到了错误:

请指定产品的选项。

我注意到:

var spConfig = new Product.Config(<?php echo $this->getJsonConfig()

它仍然引用属性“供应商”并等待用户响应在下拉列表中选择制造商。

这就是我收到错误消息的原因:请指定产品的选项。

我的问题:

是否可以过滤功能getJsonConfig()?假设不包括:

if ($attributecode != 'manufacturer'){ 做一些事情.....}

我复制了这个函数的本地版本,现在在:app\code\local\Mage\Catalog\Block\Product\View\Type\Configurable.php

请帮助...如果有人解决了这种问题。我尝试扩展getJsonConfig()以过滤某些属性,例如“供应商”,但无济于事。

我在做正确的事吗?

4

1 回答 1

1

根据您的描述,您可能应该在不使用“供应商”属性的情况下重新制作可配置产品。

当您制作可配置产品时,允许您使用复选框标记属性的第一个屏幕旨在定义可配置产品将过滤的内容,属性仍将附加到产品信息。

于 2013-05-24T17:28:10.680 回答