Para ocultar algumas opções de tipos de produtos disponíveis, precisamos reescrever um método de modelo central: /core/Mage/Catalog/Product/Type.php
1. Etapa um
Crie seu módulo – tenho certeza de que você sabe como fazer esta etapa
2. Etapa dois
Adicione a configuração de reescrita no config.xml em seu módulo como abaixo:
<?xml version="1.0"?>
<config>
<global>
<models>
<catalog>
<rewrite>
<product_type><Namespace>_Catalog_Model_Product_Type</product_type>
</rewrite>
</catalog>
</models>
</global>
</config>
3. Etapa três
Adicione o novo método ao seu arquivo personalizado
<?php
class <Namespace>_Catalog_Model_Product_Type extends Mage_Catalog_Model_Product_Type
{
static public function getOptionArray()
{
$options = array();
foreach(self::getTypes() as $typeId=>$type)
{
/*
- Product Simple: catalog/product_type_simple
- Virtual Product : catalog/product_type_virtual
- Bundle Product : catalog/bundle/product_type
- Downloadable Product : downloadable/product_type
- Configurable Product : catalog/product_type_configurable
- Grouped Product : catalog/product_type_grouped
*/
if(
$type['model'] != "catalog/product_type_virtual"
&& $type["model"] != "bundle/product_type"
&& $type["model"] != "downloadable/product_type")
{
$options[$typeId] = Mage::helper('catalog')->__($type['label']);
}
}
return $options;
}
}