有没有一种全局方法可以签入任何.tpl文件,而无需对控制器和视图进行修改以查看购物篮是否为空.这并不总是有效:
$cartItems = $this->cart->countProducts();
if ($cartItems < 0) {
print "Your cart is empty"
}
看来在登录时(有时以客人身份)可以正常工作吗?
解决方法:
更好的解决方案只是打电话
if ( ! $this->cart->hasProducts()) {
print "Your cart is empty";
}
它更快,并且直接涉及购物车中的产品数量.
方法$this-> cart-> countProducts()不会计算购物车内的产品,而是计算购物车内的总产品件数.因此,它将所有产品装入购物车,并在循环中添加每种产品的数量.因此,它速度较慢-不会太大,您甚至可能不会记录差异-但速度会稍慢(购物车中的产品越多,由于循环,速度就越慢).