Мне удалось добавить опции к конфигурируемым продуктам на страницах моего каталога, используя код, найденный здесь: http://www.magentocommerce.com/boards/viewthread/21039/P45/#t167724. Что я хотел бы сделать сейчас, так это показать только те опции, которые доступны в соответствии с запасом простой продукт, от которого исходит опция.
Например, если у меня есть футболка (настраиваемый продукт), имеющая различные цвета (простые товары), а моего красного цвета нет в наличии, красный не будет отображаться в качестве опции при отображении настраиваемого продукта.
Какой лучший способ сделать это?
Обновление:
Для ясности вот соответствующий блок кода по ссылке, которую я разместил.
<?php if($product->getTypeId() == "configurable"): ?>
<?php $attValConfig = $product->getTypeInstance()->getConfigurableAttributesAsArray(); ?>
<?php if(sizeof($attValConfig)): ?>
<?php foreach($attValConfig as $attValConfigSingle): ?>
<fieldset class="product-options" id="product-options-wrapper">
<label><?php echo $attValConfigSingle['label']; ?>:</label>
<select name="super_attribute[<?php echo $attValConfigSingle['attribute_id'] ?>]" id="attribute<?php echo $_product->getId() ?>" class="required-entry super-attribute-select">
<?php foreach($attValConfigSingle['values'] as $attValConfigSingleVal): ?>
<option value="<?php echo $attValConfigSingleVal['value_index'] ?>"><?php echo $attValConfigSingleVal['label'] ?></option>
<?php endforeach; ?>
</select>
</fieldset>
<?php endforeach; ?>
<?php endif; ?>
<?php endif; ?>
Поскольку этот код просто получает все настраиваемые параметры и отображает их, он не проверяет наличие на складе простого продукта, поддерживающего настраиваемый параметр. Как мне это сделать?