`
cgzhang
  • 浏览: 73434 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Magento中通过访问Url把产品加入购物车

PHP 
阅读更多
Magento中可以通过访问Url把产品加入购物车。
1 添加简单产品(Simple Product)
(1) 通过产品id
checkout/cart/add?product=[id]&qty=[qty]
(2) 通过产品sku
      $cProd = Mage::getModel('catalog/product');
      $id = $cProd->getIdBySku("$sku");

2 添加可配置产品(Configurable Product)
checkout/cart/add?product=[id]&qty=[qty]&super_attribute[attribute_id]=[attribute_id]&super_attribute[attribute_id]=attribute_id

其中attribute_id是产品的super attribute所对应的attribute id(注意:super attribute 和 attribute不同, 在编辑Configurable产品时,在添加简单产品时产品的属性就保存在super attribute表中)。

用于生成添加产品到购物车的url函数(仅测试用,用于生产环境要小心):

   public function getAddToCartUrl($simpleProductId , $qty=1 ,$configurableProductId=null)
  		{
	        if(!$configurableProductId){
		        return Mage::getBaseUrl().'checkout/cart/add?product='.$simpleProductId.'&qty='.$qty;
	        }
	        else{
		        $url=Mage::getBaseUrl().'checkout/cart/add?product='.$configurableProductId.'&qty='.$qty.'&';
		        $configurableProduct= Mage::getModel('catalog/product')->load($configurableProductId);
		        $simpleProduct=Mage::getModel('catalog/product')->load($simpleProductId);
		        if($simpleProduct && $configurableProduct && $configurableProduct->getId() && $simpleProduct->getId()){
			        $superAttributes=$this->getAllowAttributes($configurableProduct);
			        $attributeCodes=array();
			        foreach($superAttributes as $superAttribute){
				        $attribute = $superAttribute->getProductAttribute();
				        $attributeCodes[$attribute->getAttributeId()]= $attribute->getAttributeCode();
			        }
			        
			        $superAttributeUrl="";
			        foreach($attributeCodes as $attributeId=>$attributeCode){
				        $superAttributeUrl.='super_attribute['.$attributeId.']='. $simpleProduct->getData($attributeCode).'&';
			        }
		        }
		        //print_r($attributeCodes);
		        $url.=$superAttributeUrl;
		        return $url;
	        }
  		}
0
0
分享到:
评论

相关推荐

    magento 购物车预览

    在Magento中,购物车预览(Cart View)是用户在添加商品到购物车后查看和管理购物车内容的重要环节。这个功能提供了商品的详细信息、数量调整、总价计算以及结账选项等。 首先,我们需要理解Magento的架构。Magento...

    magento通过产品名称获取产品id

    在电子商务领域,Magento是一款非常流行的开源电子商务平台,它提供了丰富的功能和灵活性,使得...通过上述步骤,我们可以在Magento系统中有效地通过产品名称获取产品ID,这对于自动化处理和数据分析流程具有重要意义。

    magento ajax购物车

    在Magento中,Ajax技术被广泛应用于提升用户体验,特别是在购物车功能上。"Magento Ajax购物车"是指利用Ajax技术实现的无刷新购物车更新,使得用户在添加、修改或删除商品时无需跳转页面,提供更加流畅的购物体验。 ...

    Magento-Url隐藏默认语言的code.1.9.2.4测试通过.zip

    这段代码会让Magento在URL中没有语言部分的情况下使用默认商店。 另外,确保你已经禁用了Mage_Url_Rewrite模块的重新索引。因为URL重写可能导致隐藏语言代码后的问题。你可以通过后台管理系统执行`System > Index ...

    magento2-ajax-cart:Ajax添加到购物车进行扩展Magento 2提供了通过AJAX弹出窗口将产品添加到购物车的主要功能。 通过允许客户直接在产品列表页面中将任何产品类型添加到购物车,它大大改善了用户体验

    Magetop的Magento 2 Ajax购物车扩展Magetop开发的Magento 2 Ajax购物车扩展程序具有通过AJAX弹出窗口向购物车添加产品的主要功能。 通过允许客户直接从产品列表页面将任何产品类型添加到购物车,它可以显着改善用户...

    Magento Category Filter Url静态化插件

    在Magento中,商品分类管理是核心功能之一,而“Magento Category Filter Url静态化插件”则是为了优化用户体验和搜索引擎优化(SEO)而设计的。这个插件的主要目标是将分类筛选后的URL从动态形式转化为静态形式,...

    magento中文开发教程

    2. **Magento插件开发**:在Magento中,插件(也称为扩展)用于增强或改变系统功能。学习如何创建、注册和配置插件,包括编写前置/后置操作、重写类和定义插件接口。 3. **模块开发**:掌握创建新模块的步骤,包括...

    magento中文用户指南

    ### Magento中文用户指南知识点概述 #### Magento简介 - **什么是Magento?** - Magento是一款基于开源技术构建的电子商务平台,为在线商家提供了前所未有的灵活性以及对电子商务网站外观、内容和功能的强大控制...

    magento中文手册

    SEO优化也是Magento的核心优势之一,提供友好的URL结构、元标签管理,有助于提高网站在搜索引擎中的排名。 在结账流程上,Magento提供多种付款和运输选项,包括集成PayPal等支付方式,并支持税收设置和配送策略的...

    Magento中文用户使用手册 中文教程

    2 新颖的功能像是产品标签、多送货地址或产品比较系统等功能,您不需要支付额外的费用来取得,在现成的 Magento 系统中,您可以发现更多。3 专业与社群支援不像是其他的开放原始码解决方案, Magento 提供专业、可...

    magento站点首页显示新产品及产品数量

    如果想要自定义显示的产品数量,可以在block中加入`_productsCount`参数。例如,如果您希望只显示5个新产品,则可以这样设置: ```php {{block type="catalog/product_new" name="home.catalog.product.new" alias=...

    Magento1产品预览

    在Magento1中,产品预览功能是提升用户体验的关键部分,它允许用户在不实际进入产品详情页面的情况下预览产品的图片。这样的设计可以提高网站的交互性和用户满意度,因为他们能够快速浏览商品,决定是否需要进一步...

    magento 新版ajax购物车插件

    在这个"magento新版ajax购物车插件"中,我们主要关注的是如何利用Ajax技术改进Magento购物车的用户体验。 首先,Ajax(Asynchronous JavaScript and XML)是一种在不重新加载整个网页的情况下更新部分网页的技术。...

    magento使用和开发

    库存管理是电子商务的一个重要方面,Magento允许建立库存管理默认选项,进行产品批量更新,以及通过URL重写来优化搜索引擎的表现。 为了使在线商店做好销售准备,Magento提供了详细的结账流程设置,包括本地化设置...

    magento 官方中文语言包

    2. 解压下载的文件到 Magento 根目录,确保 "app" 文件夹中的内容被正确放置在对应的位置。例如,"locale" 目录应放在 Magento 根目录的同级目录下,"Mage" 和 "design" 目录则应与 "app" 直接平级。 3. 登录 ...

    magento1.7中

    Magento 1.7 的中文语言包包含了一系列的翻译文件,覆盖了平台的所有核心组件和模块,如用户界面、后台管理、购物车、结账流程等。这些翻译文件以 .csv 格式存储,其中包含了 Magento 系统中的所有文本字符串,确保...

    magik shoes magento 模板, magento 1.7 模板

    Magento是一款开源的电子商务平台,专为在线商家设计,提供强大的购物车系统和丰富的功能。"Magik Shoes Magento 模板"是专为Magento 1.7版本设计的商店主题,旨在提升在线鞋类销售商店的用户体验和视觉吸引力。在这...

    30天通过magento认证考试

    ### 30天通过Magento认证考试 #### 一、引言 Magento认证考试是针对希望在电子商务领域获得专业认可的开发者设立的一项考核。通过这项考试不仅能够证明个人的专业能力,还能提升个人在市场上的竞争力。本书《30天...

    Magento中文用户使用手册 中文教程.zip

    像是产品标签、多送货地址或产品比较系统等功能,您不需要支付额外的费用来取得,在现成的 Magento 系统中,您可以发现更多。 3 专业与社群支援 不像是其他的开放原始码解决方案, Magento 提供专业、可信赖的支援...

Global site tag (gtag.js) - Google Analytics