Magento – Cambiar stocks y cantidades en múltiples productos

Aquí os dejo el script que consigue cambiar de forma rápida los stocks de múltiples productos en Magento. Pero sobretodo: os recomiendo que primero hagías copia de seguridad y que provéis primero en un solo producto. Después no vengáis con que no os avisé.

Atención: No me hago cargo del funcionamiento del script. Si lo utilizáis es sobre vuestra absoluta responsabilidad.

    // Cargamos Magento
    require_once 'app/Mage.php';
    Mage::app();

    // Podemos conseguir los ids de los productos con una consulta como:
    // $productsIds = Mage::getModel('catalog/product')->getCollection()->addAttributeToFilter('sku', array('like' => 'something'))->getAllIds();
    // O directamente crear la tabla con los ids de los productos a cambiar:
    
    $productsIds = array(766,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,885,886,887);
    
    // Las ID de las categorias destino. Las que asignaremos a los productos (se borraran las que tienen anteriormente asignadas)
    
    $newCategories = array(52,52);
    
    // Recorremos los productos
    foreach ($productsIds as $id) {
	$product = Mage::getModel('catalog/product')->load($id);
	$product->setStockData(array(
	    'use_config_manage_stock' => 0, //'Use config settings' checkbox
	    'manage_stock'=>0, //manage stock
	    'min_sale_qty'=>0, //Minimum Qty Allowed in Shopping Cart
	    'max_sale_qty'=>0, //Maximum Qty Allowed in Shopping Cart
	    'is_in_stock' => 0, //Stock Availability
	    'qty' => 0 //qty
	  )
	);
	$product->save();
    }

Atención: No me hago cargo del funcionamiento del script. Si lo utilizáis es sobre vuestra absoluta responsabilidad.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *