12Oct

Agregar columna “Manufacturer” en listado de productos de Admin Magento 1.9+

Para hacer más expedito el filtro de productos en Magento, se puede agregar una columna con el atributo de “Manufacture” o mas bien conocida “Marca” del producto. Para hacer esto se realiza de una sencilla manera.

A continuación indicamos la manera de lograr agregar esta columna:

1. Primero se debe copiar el archivo Grid.php ubicado en: /app/code/core/Mage/Adminhtml/Block/Catalog/Product/Grid.php y agregarlo en la siguiente ruta: /app/code/local/Mage/Adminhtml/Block/Catalog/Product/Grid.php. Esto es para no editar el archivo Grid.php del estandar y realizar una copia local, anulando el original. Esta copia se debe hacer incluso con sus carpetas.

2. Una vez que se tiene lista la copia de este archivo, podemos modificarlo. Se debe agregar dentro de la carga de las columnas en la función “_prepareColumns”, cargaremos el nuevo atributo de Manufacturer:

$manufacturer_items = Mage::getModel('eav/entity_attribute_option')->getCollection()->setStoreFilter()->join('attribute','attribute.attribute_id=main_table.attribute_id', 'attribute_code');
        
        foreach ($manufacturer_items as $manufacturer_item) :
        	if ($manufacturer_item->getAttributeCode() == 'manufacturer')
        	$manufacturer_options[$manufacturer_item->getOptionId()] = $manufacturer_item->getValue();
		endforeach;
 
        $this->addColumn('manufacturer',
            array(
                'header'=> Mage::helper('catalog')->__('Manufacturer'),
                'width' => '100px',
                'type'  => 'options',
                'index' => 'manufacturer',
                'options' => $manufacturer_options
        ));

3. Una vez que esta columna se agregue, se debe cargar en la función _prepareCollection para que cargue el dato en cada uno de los productos:

$collection = Mage::getModel('catalog/product')->getCollection()
            ->addAttributeToSelect('sku')
            ->addAttributeToSelect('name')
            ->addAttributeToSelect('manufacturer') // Aquí se agregó el campo "Manufacturer"
            ->addAttributeToSelect('attribute_set_id')
            ->addAttributeToSelect('type_id');

Y eso eso es todo! Como siempre, les dejaré el archivo ya listo y modificado para que lo puedan descargar y agregar este campo sin problemas.

Share this Story

Leave a Reply

Your email address will not be published. Required fields are marked *

*

zentidoo.com ® 2015. Todos los derechos reservados