Добрый день. Сейчас делаю модуль для группировки конфигурируемых товаров (так же предусмотрена возможность группировки симпл товаров с доп. опциями). Застрял вот в таком месте: при добавлении товара в корзину маджента не видит выбранных опций. Т.е. в корзине опция отображается, но маджента ругается на невыбранные опции. чтоб нагляднее можно было посмотреть - хttp://prod.soft-loft.com/index.php/products/groupconf2.html, вот этот товар. Это в группу добавлен 1 конфигурируемый товар. когда несколько товаров - вылетает с ошибкой, но это где-то не перебираются все товары, что ли... то будет отдельный вопрос. Как решить такую проблему? Спасибо.
Модуль группировки конфигурируемых продуктов
19.07.2011 11:10
Может не совсем понял вопрос, но вот код, который выводит товар на странице товара - а дальше стандартные файлы мадженты, там еще ничего не менялось.
<?php $_product = $this->getProduct(); $_attributes = Mage::helper('core')->decorateArray($this->getAllowAttributes()); $_formId = "product_addtocart_form_".$_product->getId(); $_formJsVar = "productAddToCartForm".$_product->getId(); ?> <tr> <td><h3><?php echo $_product->getName() ?></h3></td> <td> <?php echo $this->getPriceHtml($_product) ?> </td><td> <div class="add-to-cart"> <?php if(!$_product->isGrouped()): ?> <label for="qty"><?php echo $this->__('Qty:') ?></label> <input type="text" name="super_group[<?php echo $_product->getId(); ?>]" id="qty" maxlength="12" value="<?php echo $this->getMinimalQty($_product) ?>" title="<?php echo $this->__('Qty') ?>" class="input-text qty" /> <?php endif; ?> <?php echo $this->getChildHtml('', true, true) ?> </div> <script type="text/javascript"> //<![CDATA[ var <?php echo $_formJsVar ?> = new VarienForm('<?php echo $_formId ?>'); <?php echo $_formJsVar ?>.submit = function(){ if (this.validator.validate()) { this.form.submit(); } }.bind(<?php echo $_formJsVar ?>); //]]> </script> </td> </tr><tr> <td colspan="3"> <?php if ($_product->isSaleable() && count($_attributes)):?> <dl> <?php foreach($_attributes as $_attribute): ?> <dt><label><?php echo $_attribute->getLabel() ?><span class="required"> *</span></label></dt> <dd<?php if ($_attribute->decoratedIsLast){?> class="last"<?php }?>> <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> <?php foreach($_attribute['prices'] as $option){ echo '<option value="'.$option['value_index'].'" price="'.$option['.pricing_value.'].'">'.$option['store_label'].'</option>'; } ?> </dd> <?php endforeach; ?> </dl> </td> </tr> <?php endif;?>
19.07.2011 11:33
Заочно можно предположить 2 версии:
1) система не в состоянии определить артикул или цену выбранного покупетелем значения опции
2) у товара имеются другие обязательные для выбора покупателем опции, кроме цвета
Первое вероятней.
Надо смотреть административные настройки товара, а затем провести отладку программного кода.
1) система не в состоянии определить артикул или цену выбранного покупетелем значения опции
2) у товара имеются другие обязательные для выбора покупателем опции, кроме цвета
Первое вероятней.
Надо смотреть административные настройки товара, а затем провести отладку программного кода.