我使用的是Magento 1.7.0版本
我在产品详细信息页面中添加了衬衫尺寸(新添加的属性)下拉框。使用下面的代码
应用\设计\前端\默认{mytempalte} \模板\目录\产品\ view.phtml
<?php $product = $_product->getAttributeText('size_chart'); ?> shirt size <select name="size_chart"> <option value="Select">Select</option> <?php for($i = 0;$i < count($product);$i++) { ?> <option value="<?php echo $product[$i]; ?>"><?php echo $product[$i]; ?></option> <?php } ?> </select>
顾客可以选择衬衫尺码。选择衬衫尺码后,我需要在购物车和结帐页面上显示衬衫尺寸。
如何将衬衫尺码值从产品细节传递到其他页面?。
由于
答案 0 :(得分:0)
实际上,在购物车页面中,您可能会在报价对象中获得购物车商品。
$cart = Mage::getModel('checkout/cart')->getQuote();
$items = $cart->getAllVisibleItems();
foreach ($items as $item){
$options = $item->getProductOptions();
$superAttributes = $options['info_buyRequest']['super_attribute'];
if (!!$superAttributes){
$attributeObjSize = Mage::getModel('eav/config')->getAttribute(Mage_Catalog_Model_Product::ENTITY,'size_chart');
$attributeObjSizeId = $attributeObjSize->getAttributeId();
foreach ($superAttributes as $code=>$superAttribute){
if ($attributeObjSizeId == $code){
$sizeCode = $superAttribute;
$sizeLabel = $attributeObjSize->getSource()->getOptionText($sizeCode);
}
}
}
}
$ sizeLabel应该是您想拥有的。希望它有效。