Wednesday 27 November 2013

get cross cell product collection magento

$cart = Mage::getModel('checkout/cart')->getQuote();
$productid = array();
$crossc = array();
foreach ($cart->getAllItems() as $item) {
    $productid[] = $item->getProduct()->getId();
foreach($item->getProduct()->getCrossSellProducts() as $crosscell){
$crossc[] = $crosscell['entity_id'];
}
}
$crossce = array_diff($crossc, $productid);
$collection = Mage::getResourceModel('catalog/product_collection')->addAttributeToSelect('*');
$collection->addIdFilter($crossce);
$collection->setPageSize(4);

upcell product collection magento

$pid = 2;
$product = Mage::getModel('catalog/product')->load($pid);
$collect = $this->getProduct()->getUpSellProductCollection();
$collect->getItems();

Friday 1 November 2013

custom price in cart Magento

Add event in module  etc/config.xml

<?xml version="1.0"?>
<config>
</frontend>
        <events>
            <checkout_cart_product_add_after>
                <observers>
                    <Custom_Event_Model_Observer>
                        <type>singleton</type>
                        <class>Custom_Event_Model_Observer</class>
                        <method>Mytestmethod</method>
                    </Custom_Event_Model_Observer>
                </observers>
            </checkout_cart_product_add_after>
        </events>
</frontend>
</config>




calculate your price in Custom/Event/Model/Observer.php



class Custom_Event_Model_Observer {

    public function Mytestmethod(Varien_Event_Observer $observer) {
 $item = $observer->getQuoteItem();
$item = ( $item->getParentItem() ? $item->getParentItem() : $item );
        $price = 66;
        $item->setCustomPrice($price);
        $item->setOriginalCustomPrice($price);
        $item->getProduct()->setIsSuperMode(true);

    }
}