Добрый день. Сейчас делаю модуль для группировки конфигурируемых товаров (так же предусмотрена возможность группировки симпл товаров с доп. опциями). Застрял вот в таком месте: при добавлении товара в корзину маджента не видит выбранных опций. Т.е. в корзине опция отображается, но маджента ругается на невыбранные опции. чтоб нагляднее можно было посмотреть - х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) у товара имеются другие обязательные для выбора покупателем опции, кроме цвета
Первое вероятней.
Надо смотреть административные настройки товара, а затем провести отладку программного кода.

Вход
Регистрация
Помощь


