Display the OutofStock configurable products in the frontend
Go to - app\code\core\Mage\Catalog\Block\Product\View\Type\ Configurable.php
Find the following function -
public function getAllowProducts()
{
if (!$this->hasAllowProducts()) {
$products = array();
$skipSaleableCheck = Mage::helper('catalog/product')->getSkipSaleableCheck();
$allProducts = $this->getProduct()->getTypeInstance(true)
->getUsedProducts(null, $this->getProduct());
foreach ($allProducts as $product) {
if ($product->isSaleable() || $skipSaleableCheck) {
$products[] = $product;
}
}
$this->setAllowProducts($products);
}
return $this->getData('allow_products');
}
Replace with -
public function getAllowProducts() {
$allProducts = $this->getProduct()->getTypeInstance()->getUsedProducts();
$this->setAllowProducts($allProducts);
return $this->getData('allow_products');
}
Go to - app\code\core\Mage\Catalog\Block\Product\View\Type\ Configurable.php
Find the following function -
public function getAllowProducts()
{
if (!$this->hasAllowProducts()) {
$products = array();
$skipSaleableCheck = Mage::helper('catalog/product')->getSkipSaleableCheck();
$allProducts = $this->getProduct()->getTypeInstance(true)
->getUsedProducts(null, $this->getProduct());
foreach ($allProducts as $product) {
if ($product->isSaleable() || $skipSaleableCheck) {
$products[] = $product;
}
}
$this->setAllowProducts($products);
}
return $this->getData('allow_products');
}
Replace with -
public function getAllowProducts() {
$allProducts = $this->getProduct()->getTypeInstance()->getUsedProducts();
$this->setAllowProducts($allProducts);
return $this->getData('allow_products');
}
