請幫助...任何人隱藏在前端部分配置屬性 - Magento的
我有隱藏一些配置屬性的一個問題:
這些都是我在後端配置屬性:
- 形狀/類型
- 砂&顏色
- 柄
- 個項目打包
- 直徑
- 供應商
我的客戶希望隱藏前端 「製造商」屬性,但要在後端導入供應商。
請參閱網站我的工作:
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>
製造商將不會顯示在前端。
但是當我點擊加入購物車按鈕,我得到了錯誤:
請指定產品的選擇(S)。
我注意到:
var spConfig = new Product.Config(<?php echo $this->getJsonConfig()
它仍然是參照屬性「供應商」,並等待用戶響應下拉選擇製造商了。
這就是爲什麼我得到錯誤:請指定產品的選項。
我的問題:
是否可以過濾功能getJsonConfig()
? 讓的說還不包括:
如果($ attributecode =「製造商」!){ 做一些東西..... }
我複製此功能的本地版本,而現在發現: app\code\local\Mage\Catalog\Block\Product\View\Type\Configurable.php
請幫助...如果有人完成這種問題。 我試圖擴展getJsonConfig()
來過濾一些屬性,如「供應商」,但無濟於事。
我做對了嗎?
你爲什麼要這樣做?可配置屬性的思想是讓用戶選擇這個選項。如果不顯示,系統將如何知道使用哪個製造商變體?如果你可以解釋你爲什麼想要這樣做以及你想達到什麼,我可能會幫助你。 – Andrew