Last active
September 26, 2017 14:09
-
-
Save AndresInSpace/631cd6d6419c1c1b63390eedcbbc6b88 to your computer and use it in GitHub Desktop.
Fix getCrossSellProductCollection() to stop returning ENTIRE product catalog collection in object data..
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php $plcsCol = Mage::getModel('catalog/product_link')->getCollection()->addFieldToFilter('link_type_id',Mage_Catalog_Model_Product_Link::LINK_TYPE_CROSSSELL)->addFieldToFilter('product_id',$_product->getId())->getData();//get crosssell product IDs attached to parent product ?> | |
<?php $csIDs = array_column($plcsCol,'linked_product_id');//map cs IDs to array, use array to filter collection by IDs ?> | |
<?php $_crossSellProducts = $_product->getCrossSellProductCollection()->addAttributeToFilter('entity_id', array('in'=>$csIDs))->addAttributeToSelect('*'); //ensures our crosssell collection is limited to ONLY attached crossells of parent.. calling getCrossSellProductCollection without filtering seems to return the ENTIRE product catalog collection.. | |
//replace addAttributeToSelect('*') with whatever fields you need from product flat catalog.. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment