Desactivar varios productos a la vez


Para desactivar más de un producto a la vez existen varias opciones. Hay módulos que ofrecen diferentes herramientas, pero si no queremos perder el tiempo probando y testando podemos utilizar una consulta MySql que lo haga.
 

Sin tener en cuenta las opciones de multitienda

En la siguiente consulta que mostramos hay que tener en cuenta dos cosas importantes. La primera, que hay que reemplazar el prefijo ps_ por el prefijo que tengamos definido en nuestra tienda. La segunda, es el campo en el que se indica "IDS_PRODUCTOS" que deberemos reemplazar por los ids de nuestros productos separados por una coma, quedando de la siguiente manera
"(52,53,58,75)". 
El id es la cifra que aparece en la primera columna de la tabla de productos de prestashop.
 
UPDATE ps_product_shop SET active= 0 WHERE id_product IN (IDS_PRODUCTOS)

Por ejemplo, queremos desactivar los productos con id 18, 27, 142 y 275. La consulta quedaría de la siguiente forma
 
UPDATE ps_product_shop SET active= 0 WHERE id_product IN (18,27,142,275)
 

Con multitienda

 
Sin embargo, si estamos empleando la opción de multitiendas, y solo queremos desactivar los productos en una de las tiendas deberemos añadir un poco más de información a la consulta.
 
En este caso la consulta para desactivar los productos es 
 
UPDATE ps_product_shop SET active= 0 WHERE id_shop=ID_TIENDA AND id_product IN (IDS_PRODUCTOS)


Donde deberemos reemplazar ID_TIENDA por el id de la tienda en la que queremos desactivar los productos.

 
Etiquetas: 1.4.x, 1.5.x, base de datos, productos
28-08-2013 23:48 Rodrigo Medina {writeRevision}
Valoración media: 4.5 (2 votos)

No puedes comentar este registro

Chuck Norris has counted to infinity. Twice.