我正在使用具有大小和颜色属性的可配置产品.我想根据选择的选项更改可配置产品视图中的主图像如果我选择红色,那么只要我选择选项,就会在主图像上显示具有红色属性值的关联产品图像.
我怎样才能做到这一点??
谢谢...
我找到了一个解决这个问题的方法,我正在为此工作......
\ app\code\core\Mage\Catalog\Block\Product\View\Type\Configurable.php中有一个块.
1)扩展此块或只需将"Mage\Catalog\Block\Product\View\Type\Configurable.php"添加到"\ app\code\local"文件夹.
2)Configurable.php中有一种方法getJsonConfig(),用于获取可配置的产品详细信息及其相关产品.我在这个文件中创建了一个名为getJsonConfigImages()的新方法,在这个方法中我添加了以下代码.
public function getJsonConfigImages() { $spImages = array(); foreach ($this->getAllowProducts() as $_sp) { $spImages[$_sp->getId()] = (string)$this->helper('catalog/image') ->init($_sp, 'small_image') ->resize(645,520); } return Mage::helper('core')->jsonEncode($spImages); }
此方法将为我提供与可配置产品相关联的关联产品的每个main-image-url.
3)然后我只是在\ app\design\frontend\yourpackage\yourtheme\template\catalog\product\view\type\options\configurable.phtml中调用此方法,就像这样......
<script type="text/javascript"> var spConfig = new Product.Config(<?php echo $this->getJsonConfig() ?>); var spConfigimages = new Product.Config(<?php echo $this->getJsonConfigImages() ?>); </script>
我通过使用这种方法解决了这个问题......如果有的话,请提出新的想法或更好的解决方案......