运行joomla 3.4.8和VM 3.0.12
我只需要在购物车中只允许一种产品。我的意思是,如果客户将产品添加到购物车,然后如果他/她想要添加其他产品,请不要让它显示错误消息,例如"你不能在购物车中拥有多个产品"
答案 0 :(得分:0)
您可以更改购物车控制器页面中的add()函数来实现它。你可以编写像这样的代码
$cart = VirtueMartCart::getCart();
$prdata = $cart->cartProductsData;
$qty = 0;
foreach($prdata as $pdata)
{
$qty = $qty + $pdata['quantity'];
}
if ($cart) {
$virtuemart_product_ids = vRequest::getInt('virtuemart_product_id');
$error = false;
if($qty>=1)
{
$msg = vmText::_('you can't have more than one product in cart');
$type = 'warning';
}
else
{
$cart->add($virtuemart_product_ids,$error);
在同一页面的updatecart()函数中使用相同的逻辑。
如果您使用Fancypopup addtocart,则使用addJS函数中的代码而不是add()函数。