我正在开发集成第三方API的付款模块。来自api的一些订单失败了,我想将它们标记为付款api消息错误,但是当我创建订单而OrderStatus失败时,我丢失了购物车。在这种情况下,我希望用户保留他的购物车,并可能选择其他一些付款。
我怎么能这样做?
日Thnx
答案 0 :(得分:0)
这在Presta中无法以任何常规方式进行,因此如果您希望订单状态失败并为用户保留购物车,则需要克隆购物车并在上下文中设置
$newCart = $cart->duplicateObject();
$products = $cart->getProducts();
foreach($products as $product) {
$newCart->updateQty($product['cart_quantity'], $product['id_product']);
}
$newCart->save();
Hook::exec('actionCartSave');
$this->context->cookie->id_cart = $newCart->id;