joseangel2003 Posted June 14, 2014 Share Posted June 14, 2014 (edited) Hola, he estado leyendo y leyendo en el foro pero no encuentro la manera de lograr que en POPULARES y en el resto de los listados de la tienda no se muestren productos con stock 0 por mas que esten activos (asi los dejamos por un tema google), alguien nos podria dar una mano? la web es www.owonet.com.ar y la version de presta es la 1.6.0.6 Gracias desde ya! Edited July 6, 2014 by joseangel2003 (see edit history) Link to comment Share on other sites More sharing options...
Manz Soluciones Posted June 19, 2014 Share Posted June 19, 2014 Hola. Tendrias dos soluciones. O modificar las clases de Category editando la linea 639 aprox. .($id_supplier ? ' AND p.id_supplier = '.(int)$id_supplier : '') .' AND stock.quantity >0 GROUP BY product_shop.id_product'; O lo mejor es desactivar los productos cuando no tengan stock, asi no aparecen en ningun lado. Link to comment Share on other sites More sharing options...
joseangel2003 Posted June 21, 2014 Author Share Posted June 21, 2014 Hola Manz, gracias por el tiempo, ya modifique la linea que me recomendaste en /classes/category.php (a mi me figura en la 697 y limpie cache y forze compilacion y limpie cache en google (tenemos cdn) pero nada , siguen saliendo productos sin stock en POPULARES , no los desactivamos por un tema de SEO. espero nos puedan ayudar. Gracias Link to comment Share on other sites More sharing options...
Manz Soluciones Posted June 21, 2014 Share Posted June 21, 2014 (edited) Hola. Despues de muchas pruebas, ver el codigo más a fonto, etc, me doy cuenta que esa solución que te suministré no es valida en 1.5 y 1.6. Como parece ser que no hay una solución factible de primeras te indico las dos posibilidades que tienes. 1º. Comprar este plugin que desactiva automaticamente el producto cuando el stock es 0: http://catalogo.webscharles.es/otros-modulos/10-chrls-desactiva-stock-cero.html 2º. Si el hosting te lo permite puedes crear un Trigger. Basicamente es indicarle que cuando haya un cambio en la base de datos haga la operación que quieras. Para ello tendrias que crear un trigger con la siguiente funcion. (En phpmyadmin debe aparecerte la pestaña Trigger, o en su defecto preguntar a tu hosting) UPDATE ps_product SET active=0, redirect_type='404' WHERE id_product IN (SELECT id_product FROM ps_stock_available WHERE quantity=0); UPDATE ps_product_shop SET active=0, redirect_type='404' WHERE id_product IN (SELECT id_product FROM ps_stock_available WHERE quantity=0); UPDATE ps_product SET active=1, redirect_type='' WHERE id_product IN (SELECT id_product FROM ps_stock_available WHERE quantity>0); UPDATE ps_product_shop SET active=1, redirect_type='' WHERE id_product IN (SELECT id_product FROM ps_stock_available WHERE quantity>0); Esa operación lo que hace es. Establece el PRODUCTO como INACTIVO si EL STOCK es IGUAL a 0 Establece el PRODUCTO como ACTIVO si EL STOCK es MAYOR a 0 Puedes leer más en este post. http://www.prestashop.com/forums/topic/258359-how-to-hide-out-of-stock-products-in-prestashop-1541/ Espero que te sirva. Edited June 21, 2014 by Manz Soluciones (see edit history) Link to comment Share on other sites More sharing options...
joseangel2003 Posted June 22, 2014 Author Share Posted June 22, 2014 Hola Manz, otra vez gracias por el tiempo, esta perfecto lo que me pasas como alternativa pero no queremos desactivar el producto sino que no se muestre en los listados cuando la cantidad es cero, si te fijas en la ficha del producto podes desactivar tambien a mano o activar pero lo que nos interesa es quie el producto siga activa solo que no se muestre en los listados cuando el stock es igual a cero, la idea es que google siga encontrando el producto (si lo desactivas te da "no encontrado") pero que los compradores no los vean en los listados cuando no tienen stock, espero me entiendas y ojala me puedas dar una mano o alguien que sepa que parte del codigo tocar! gracias Link to comment Share on other sites More sharing options...
joseangel2003 Posted June 24, 2014 Author Share Posted June 24, 2014 Hola, nadie que nos pueda dar una indicacion para conseguir lo que necesitamos? saludos Link to comment Share on other sites More sharing options...
joseangel2003 Posted June 27, 2014 Author Share Posted June 27, 2014 Nadie que sepa como ayudarnos en lo que necesitamos? no doy pie con bola! Saludos Link to comment Share on other sites More sharing options...
mascotasavila Posted October 6, 2014 Share Posted October 6, 2014 Yo he probado modificar el product-list.tpl de la plantilla, usando una opción que daban en otro post, pero me desactiva también los productos que tienen en la combinación por defecto 0, aunque en las demás si haya stock, así que no me sirve. La opción es esta: {foreach from=$products item=product name=products} Justo debajo poner:{if $product.quantity > 0} Y cierras luego el {/if} </div></li>{/if}{/foreach} ¿Alguien sabe como sería para que tuviera en cuenta la cantidad total de los productos (sumando todas las combinaciones)???? La opción desactivar estos productos no me sirve, por temas de SEO, simplemente quiero que no se vean en el listado. Link to comment Share on other sites More sharing options...
infinityl Posted January 21, 2015 Share Posted January 21, 2015 Lo suyo sería una sentencia mysql que quite los productos sin stock de la categoría inicio, así no se desactivan pero no se muestran en destacados. ¿Alguien sabe como sería la sentencia sql? Link to comment Share on other sites More sharing options...
Recommended Posts