西部数码主机 | 阿里云主机| 虚拟主机 | 服务器 | 返回乐道官网
当前位置: 主页 > php教程 > magento教程 >

在magento购物车页面获取自定义选项

时间:2016-03-23 07:44来源: 作者: 点击:
最近在写一个magento婚纱定制插件,适合于服饰类产品的用户定制,在正常情况下用户在填写完身高和三围的时候进入到购物车页面时默认是不显示自定义的选项属性的,因为前端的选项

最近在写一个magento婚纱定制插件,适合于服饰类产品的用户定制,在正常情况下用户在填写完身高和三围的时候进入到购物车页面时默认是不显示自定义的选项属性的,因为前端的选项表单是在模板里添加进去的,而不是之前在后台添加好的。下面这段代码基本可以实现自定义选项的调用

上两张效果图,相关文字ps过

magento婚纱定制插件

magento婚纱定制插件

magento 婚纱定制插件

magento 婚纱定制插件

1 // Load the session
2  
3 $session = Mage::getSingleton('checkout/session');
4  
5 // Array to hold the final result
6  
7 $finalResult = array();
8  
9 // Loop through all items in the cart
10  
11 foreach ($session->getQuote()->getAllItems() as $item)
12  
13 {
14  
15   // Array to hold the item's options
16  
17   $result = array();
18  
19   // Load the configured product options
20  
21   $options = $item->getProduct()->getTypeInstance(true)
22  
23   ->getOrderOptions($item->getProduct());
24  
25   // Check for options
26  
27   if ($options)
28  
29   {
30  
31     if (isset($options['options']))
32  
33     {
34  
35       $result = array_merge($result, $options['options']);
36  
37     }
38  
39     if (isset($options['additional_options']))
40  
41     {
42  
43       $result = array_merge($result, $options['additional_options']);
44  
45     }
46  
47     if (!empty($options['attributes_info']))
48  
49     {
50  
51       $result = array_merge($options['attributes_info'], $result);
52  
53     }
54  
55   }
56  
57   $finalResult = array_merge($finalResult, $result);
58  
59 }
60  
61 // Now you have the final array of all configured options
62  
63 Zend_Debug::dump($finalResult);

注:代码是老外的,博客被墙。

(责任编辑:好模板)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------