Magento – Cross-sells not showing in cart
if you are not managing stock, cross-sells will not show.
edit the cross-sell products that are not showing up. Go to the inventory tab on the edit product page and change these options:
Manage Stock: Yes
– Qty: > 0
—In Stock: Yes
you may want to change following setting also but not suggested if you want to manage stock on sale
in System > Configuration > Inventory
Decrease Stock When Order is Placed: No
Above settings will stop showing product in cross sell on check out when in stock status changes to out stock for cross sell product.
If you want to show product in cross sell even if it is out of stock without changing above settings you need to make a small change in coding as below
go to appcodecoreMageCheckoutBlockCart and open Crosssell.php
search for Mage::getSingleton(‘cataloginventory/stock’)->addInStockFilterToCollection($collection);
comment this line