willyadda Posted July 3, 2015 Share Posted July 3, 2015 (edited) Hola a todos, Llevo tiempo leyendo por "San Google" y no doy con la solución. Tenemos una tienda en prestashop y cada día vamos variando el stock de los productos. Estos productos a veces pueden no tener stock durante varias semanas e incluso meses. Hasta la fecha estoy desactivando los productos que no tienen stock y volviéndolos a activar cada vez que tienen. Poco a poco iba redireccionando (302) producto por producto a algún producto similar, pero la tienda ha ido creciendo y tenemos miles de artículos, esta labor es muy dura. La idea es que cuando el posible cliente pinche en el enlace del producto desde los buscadores si el producto esta desactivado llevarle a la pagina que contiene la categoría asociado a ese producto y le muestre los productos que si están activados. Pero como os comento por más que busco no encuentro la solución. Alguna idea? mil gracias! Saludos Edited July 3, 2015 by willyadda (see edit history) Link to comment Share on other sites More sharing options...
ventura Posted July 3, 2015 Share Posted July 3, 2015 Es mejor que lo hagas editando el controlador controllers\front\ProductController.php Alli en la funcion public function init() Tienes esto switch ($this->product->redirect_type) { case '301': header('HTTP/1.1 301 Moved Permanently'); header('Location: '.$this->context->link->getProductLink($this->product->id_product_redirected)); exit; break; case '302': header('HTTP/1.1 302 Moved Temporarily'); header('Cache-Control: no-cache'); header('Location: '.$this->context->link->getProductLink($this->product->id_product_redirected)); exit; break; case '404': default: header('HTTP/1.1 404 Not Found'); header('Status: 404 Not Found'); $this->errors[] = Tools::displayError('This product is no longer available.'); break; } Cambialo por esto para que te rediriga a la categoria por defecto del producto switch ($this->product->redirect_type) { case '301': header('HTTP/1.1 301 Moved Permanently'); header("Location: ".$this->context->link->getCategoryLink($this->product->id_category_default)); exit; break; case '302': header('HTTP/1.1 302 Moved Temporarily'); header('Cache-Control: no-cache'); header("Location: ".$this->context->link->getCategoryLink($this->product->id_category_default)); exit; break; case '404': default: header('HTTP/1.1 404 Not Found'); header('Status: 404 Not Found'); $this->errors[] = Tools::displayError('This product is no longer available.'); break; } Link to comment Share on other sites More sharing options...
willyadda Posted July 4, 2015 Author Share Posted July 4, 2015 (edited) Muchísimas gracias Antonio Funciona perfectamente. Es una solución un poco drástica pero tener que ir redireccionanado producto por producto era una labor descomunal. Otra solución hubiera sido no mostrar en el front de las categorías y el home los productos que no tienen stock, pero probando las soluciones que encontré por el foro, a la hora de mostrar los productos se descuadraban y en la vista cuadricula dejaba huecos de productos en blanco. Seguramente es porque la función que le envié el total de productos no coincide con los productos que se muestran pero no conseguí modificar eso. Lo dicho muchas gracias y saludos Saludos Edited July 4, 2015 by willyadda (see edit history) Link to comment Share on other sites More sharing options...
ventura Posted July 4, 2015 Share Posted July 4, 2015 Para ocultar los productos que esten fuera de stock puedes utilizar este modulo https://www.prestashop.com/forums/topic/344050-free-update-elements-v24-display-only-active-products-categories/ Link to comment Share on other sites More sharing options...
willyadda Posted July 4, 2015 Author Share Posted July 4, 2015 Antonio, gracias de nuevo por tu ayuda!! Voy a echarle un vistazo :-) Link to comment Share on other sites More sharing options...
Sunriver Posted May 29, 2020 Share Posted May 29, 2020 Hola Tengo miles de errores 404 en Google Search Console. SI hago este cambio para que las redirecciones 301 se redijan a la categoría padre. . como hago para "convertir" las urls 404 que tengo ahora en 301 y que funciones ese cambio en el código? Saludos Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now