2016-06-21 66 views
0

在Magento中有什麼方法可以檢查購物車或報價對象是否已將產品分組 或 我還可以詢問購物車中添加的產品是否爲分組產品的一部分。檢查購物車是否有任何分組產品

有沒有辦法通過代碼來測試。

回答

0

我不知道這是最好的或沒有,但你可以用下面的代碼:

$groupedParentsIds = Mage::getResourceSingleton('catalog/product_link') 
        ->getParentIdsByChild(enter id of product in cart here, Mage_Catalog_Model_Product_Link::LINK_TYPE_GROUPED); 

如果標識由您輸入有家長則產品組合產品的一部分。

您可以檢查您的購物車中的每個產品。

+0

不,那會有點漫長的過程。不建議。非常感謝您的建議。 – arushi

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事件

+0

我知道捆綁產品,我需要分組產品。 – arushi

0

在分組的產品有兩個部分

父產品

兒童產品

在車我們只能添加兒童產品。因此,您必須檢查購物車是否包含使用以下代碼的任何組產品。

Mage::getModel('catalog/product_type_grouped')->getParentIdsByChild($productId); 
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"; 
    } 
} 
相關問題