在Magento中有任何方法可以检查购物车或报价对象是否已将产品分组 要么 我还可以询问购物车中添加的商品是否属于Grouped产品。
无论如何都要通过代码来测试它。
答案 0 :(得分:0)
我不知道这是最好还是没有,但您可以使用以下代码:
$groupedParentsIds = Mage::getResourceSingleton('catalog/product_link')
->getParentIdsByChild(enter id of product in cart here, Mage_Catalog_Model_Product_Link::LINK_TYPE_GROUPED);
如果您输入的Id包含父项,则该项目是分组产品的一部分。
您可以检查购物车中的每件商品。
答案 1 :(得分:0)
$quote = Mage::getSingleton('checkout/session')->getQuote();
$cartItems = $quote->getAllVisibleItems();
foreach ($cartItems as $item){
if($item->getProduct()->getTypeId()=="bundle")
echo "This is a bundle product";
if($item->getProduct()->getTypeId()=="grouped")
echo "This is a grouped product";
if($item->getProduct()->getTypeId()=="configurable")
echo "This is a configurable product";
if($item->getProduct()->getTypeId()=="virtual")
echo "This is a virtual product";
if($item->getProduct()->getTypeId()=="simple")
echo "This is a simple product";
if($item->getProduct()->getTypeId()=="downloadable")
echo "This is a downloadable product";
if($item->getProduct()->getTypeId()=="giftcard") //in enterprise
echo "This is a giftcard product";
}
您还可以设置观察者来观看checkout_cart_add_product_complete事件
答案 2 :(得分:0)
在Grouped产品中有两部分
母产品
儿童用品
在购物车中,我们只能添加儿童产品。因此,您必须使用以下代码检查购物车是否包含任何组产品。
Mage::getModel('catalog/product_type_grouped')->getParentIdsByChild($productId);
答案 3 :(得分:0)
您可以使用以下代码查看购物车是否包含任何分组产品:
$quote = Mage::getSingleton('checkout/session')->getQuote();
$cartItems = $quote->getAllVisibleItems();
foreach ($cartItems as $item){
$productId = $item->getProduct()->getId();
$ids = Mage::getModel('catalog/product_type_grouped')->getParentIdsByChild($productId);
if(isset($ids) && !empty($ids))
{
echo "This is a grouped product";
}
}