How to display custom select option on product list page?
2010-12-17 20:02
507 查看
here's the code"
add it to your list.phtml and chance your stylesheet
<?php if($_product->isSaleable()): ?>
<form action="<?php echo Mage::getBaseUrl(); ?>checkout/cart/add/” method="post" id="product_addtocart_form_<?php echo $_product->getId() ?>"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
<fieldset class="no-display">
<input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
<input type="hidden" name="related_product" id="related-products-field" value="" />
</fieldset>
<?php // Product options ?>
<?php $product = Mage::getModel('catalog/product'); ?>
<?php $product->load($_product->getId()); ?>
<?php // Configurable products ?>
<?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; ?>
<?php // Custom options - tested but not fully implemented ?>
<?php
$xml = "";
$attVal = $product->getOptions();
if(sizeof($attVal)) {
foreach($attVal as $optionVal) {
$xml .= $optionVal->getTitle().": ";
$xml .= "<select name='options[".$optionVal->getId()."]'>";
foreach($optionVal->getValues() as $valuesKey => $valuesVal) {
$xml .= "<option value='".$valuesVal->getId()."'>".$valuesVal->getTitle()."</option>";
}
$xml .= "</select>";
}
}
echo $xml;
?>
<?php // Product quantity and add ?>
<?php if(!$_product->isGrouped()): ?>
<label>Qty:</label>
<input name="qty" type="text" id="qty" maxlength="12" value="<?php echo $this->getMinimalQty($_product)==null?1:$this->getMinimalQty($_product) ?>"/>
<button type="button" onclick="productAddToCartForm<?php echo $_product->getId() ?>.submit()">Add to Cart</button>
<?php endif; ?>
</form>
<script type="text/javascript">
var productAddToCartForm<?php echo $_product->getId() ?> = new VarienForm('product_addtocart_form_<?php echo $_product->getId() ?>');
productAddToCartForm<?php echo $_product->getId() ?>.submit = function(){
if (this.validator.validate()) {
this.form.submit();
}
}.bind(productAddToCartForm<?php echo $_product->getId() ?>);
</script>
<?php else: ?>
<div class="out-of-stock"><?php echo $this->__('Out of stock') ?></div>
<?php endif; ?>
add it to your list.phtml and chance your stylesheet
<?php if($_product->isSaleable()): ?>
<form action="<?php echo Mage::getBaseUrl(); ?>checkout/cart/add/” method="post" id="product_addtocart_form_<?php echo $_product->getId() ?>"<?php if($_product->getOptions()): ?> enctype="multipart/form-data"<?php endif; ?>>
<fieldset class="no-display">
<input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
<input type="hidden" name="related_product" id="related-products-field" value="" />
</fieldset>
<?php // Product options ?>
<?php $product = Mage::getModel('catalog/product'); ?>
<?php $product->load($_product->getId()); ?>
<?php // Configurable products ?>
<?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; ?>
<?php // Custom options - tested but not fully implemented ?>
<?php
$xml = "";
$attVal = $product->getOptions();
if(sizeof($attVal)) {
foreach($attVal as $optionVal) {
$xml .= $optionVal->getTitle().": ";
$xml .= "<select name='options[".$optionVal->getId()."]'>";
foreach($optionVal->getValues() as $valuesKey => $valuesVal) {
$xml .= "<option value='".$valuesVal->getId()."'>".$valuesVal->getTitle()."</option>";
}
$xml .= "</select>";
}
}
echo $xml;
?>
<?php // Product quantity and add ?>
<?php if(!$_product->isGrouped()): ?>
<label>Qty:</label>
<input name="qty" type="text" id="qty" maxlength="12" value="<?php echo $this->getMinimalQty($_product)==null?1:$this->getMinimalQty($_product) ?>"/>
<button type="button" onclick="productAddToCartForm<?php echo $_product->getId() ?>.submit()">Add to Cart</button>
<?php endif; ?>
</form>
<script type="text/javascript">
var productAddToCartForm<?php echo $_product->getId() ?> = new VarienForm('product_addtocart_form_<?php echo $_product->getId() ?>');
productAddToCartForm<?php echo $_product->getId() ?>.submit = function(){
if (this.validator.validate()) {
this.form.submit();
}
}.bind(productAddToCartForm<?php echo $_product->getId() ?>);
</script>
<?php else: ?>
<div class="out-of-stock"><?php echo $this->__('Out of stock') ?></div>
<?php endif; ?>
相关文章推荐
- Magento How To Display Product Custom Option On list.phtml
- Magento How To Display Product Custom Option On list.phtml
- How to change upsell product display number on product view page?
- How to Get All Product Images in products list page?
- how to show sku in product list page?
- How to Get All Product Images in products list page?
- How To Print Using Custom Page Sizes on Windows NT and Windows 2000(VB6)
- How to Get All Product Images in products list page?
- How to Change the Default Select Drop-Down List with CSS
- How to get unique visitors per page on Google Analytics?
- SSRS: How to Display Checkbox on Report
- How to freeze a dynamic aspx page into a static html page (on the server).
- [Shell]How to display text on specific line of text file
- How to dynamically display the tips or help on the text box
- How to center body on a page?
- How to auto start download file on page load?
- how to select checkbox on cli environment?
- SSRS: How to Display Checkbox on Report
- DateFomrat Mask in ASPxTextbox increases width ,How to disable display of dxeErrorCell on ASPxTextBox
- How to Capture the Row Selected on Search Page In a Variable?