我也希望使用外部(基于java springframework)品牌网站的magento。
用户将看到一个“购买”按钮。 我还想让用户在每个外部页面的标题中看到购物车信息的摘要(购物车中的商品总数+商品数量)。 结帐过程将照常在 magento 上进行。
Magento 提供了soap api。
当用户想要结帐和付款时,我无法理解如何处理从我的网站切换回 magento。
场景1
- 用户浏览我的 java 网站并最终单击“购买”按钮(在这种情况下,这是指向 magento 实例的简单 REST 链接 http://yourdomain.com/checkout/cart/add/product/ {ID} ...在 magento 的网站上创建了 shoppingCartId )
- 购物车摘要是通过服务器端 java 调用 magento 的 Web 服务(我认为是 cart.list 和 cart.total)来检索的 -> 问。我应该使用哪个 shoppingCartId?
- 一个简单的链接将用户直接发送到 magento 网站并进入购物车页面
场景 2:
- 用户浏览我的 Java 网站并最终单击“购买”按钮(这是对 magento 的 Web 服务 cart_product.add 的服务器端 Java 调用;shoppingCartId 通过 Web 服务创建并存储到 Java session 中)<
- 购物车摘要是通过服务器端 java 调用 magento 的 Web 服务(我认为是 cart.list 和 cart.total)来检索的,shoppingCartId 是从 java session 中检索的
- 一个简单的链接将用户直接发送到magento的网站进入购物车页面,shoppingCartId被存储到java session 中,我想象一个新的空购物车将显示给用户:问。是否有指向特定购物车的 REST 链接(即使用 shoppingCartId 作为参数)?
最佳答案
您可以使用以下代码在外部使用magento数据(例如购物车):
<?php
/**
* @author MagePsycho <info@magepsycho.com>
* @website http://www.magepsycho.com
* @category using Magento Externally
*/
$mageFilename = 'app/Mage.php';
require_once $mageFilename;
#Mage::setIsDeveloperMode(true);
#ini_set('display_errors', 1);
umask(0);
Mage::app();
Mage::getSingleton('core/session', array('name'=>'frontend'));
#Get total items and total quantity in cart
$totalItems = Mage::getModel('checkout/cart')->getQuote()->getItemsCount();
$totalQuantity = Mage::getModel('checkout/cart')->getQuote()->getItemsQty();
#Get subtotal and grand total price of cart
$subTotal = Mage::getModel('checkout/cart')->getQuote()->getSubtotal();
$grandTotal = Mage::getModel('checkout/cart')->getQuote()->getGrandTotal();
希望这对您有帮助。 干杯!!
关于java - 是否可以获取 magento 购物车摘要(总计和#items)以供外部使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8354299/