Si bien se puede deshabilitar uno a uno los productos en Magento, o también hay algunos módulos que permiten hacer batch update, o incluso se pueden utilizar los perfiles de importación para actualizar los productos, hacerlo de manera programática consume muchos recursos y muchas veces al hacer actualizaciones de muchos productos Magento explota.
Entonces, para hacerlo de manera rápida se puede lanzar un query que actualice el atributo “status” al valor 2 (deshabilitado).
Para ello se puede utilizar el siguiente query:
UPDATE catalog_product_entity_int cpei, catalog_product_entity cpe
SET cpei.value = "2"
WHERE cpe.entity_id = cpei.entity_id
AND cpe.sku LIKE '%SKU%'
AND cpei.attribute_id = 273
Luego de lanzar el query hay que actualizar los índices de Magento. Esto se puede hacer desde el backend o por consola (hay que situarse en el directorio shell):
# php indexer.php reindexall
Importante: el id del atributo status (273 en mi ejemplo) puede variar según la instalación de Magento.
Para saber el id del atributo “status” se puede ir a Catálogo > Atributos > Gestionar los atributos > buscar por código el atributo status > hacer click sobre el mismo > copiar el id que aparece en la url.
Por ejemplo: admin/catalog_product_attribute/edit/attribute_id/273