新浪博客

Prestashop源码分析之使用一个cart生成所有订单241112

2024-11-12 14:21阅读:
下面分析一下代码:
首先初始化id_cart,
$id_cart = 32; // 替换成你的购物车 ID
$cart = new Cart($id_cart);
然后从这个购物车获取所有的产品
$products = $cart->getProducts();
然后将这个购物车中的产品全部删除,
// 删除购物车中的所有旧产品
foreach ($products as $product) {
$cart->deleteProduct($product['id_product']);
}
之后将前端传进来的新的product id添加到购物车中
// 添加新产品到购物车中
$cart->updateQty(
$quantity, // 新产品的数量
$productId, // 新产品 ID
null, // 产品属性 ID(如没有则为 null)
null, // 自定义 ID(如没有则为 null)
'up' // 数量更新方式,'up' 表示增加
);
这样相当于使用代码中这个固定的cart id来反复的添加商品和删除商品,将来不管哪个用户登录,都将使用这个购物车id来进行订单创建,但是有一个问题是将来所有到的用户都用到一个cart id将来计算价格的时候可能会有问题,因为计算价格时有可能将其他用户放进购物车中的产品也计算进去,所以最好的办法是不同的用户绑定不同的一个固定的cart id,这块代码明天改一下。


我的更多文章

下载客户端阅读体验更佳

APP专享