kiteman Posted May 8, 2012 Share Posted May 8, 2012 (edited) Bonjour, C'est un sujet qui a déjà été abordé mais j'aimerais votre avis sur mon cas précis. Je vends des produits d'occasion (qté=1, toujours) donc dès que le produit est vendu, je le désactive et ensuite je le supprime et évidemment j'obtiens un tas (même un gros tas de 404 dans les GWT. Comment gérer cela ? j'ai vu qu'il est possible de placer les produits dans une catégorie "poubelle" désactivée tout en laissant les produits eux-mêmes activés. Mais cela va faire grossir mon nb de produits à l'infini. Quelle est pour vous la meilleure solution ? Le fait d'avoir un nb important de 404 affaiblit-il le référencement ? L'idéal peut-être pour moi serait de rediriger les visiteurs vers la liste produit de la catégorie ou était le produit concerné. Mais c'est plus facile à dire qu'à faire !!! Qu'en pensez-vous ? Merci de votre précieuse aide. PS : 1.4.6.2 Edited September 8, 2012 by kiteman (see edit history) Link to comment Share on other sites More sharing options...
labelandco Posted May 9, 2012 Share Posted May 9, 2012 le fait d'avoir une erreur 404 sur un nombre important de pages empêche en effet un référencement efficace du fait que les moteurs sont en attente de savoir où se trouve la page. le plus simple me semble e t il serait de faire une redirection 301 des url des produits qui n'existent plus vers d'autres url de produits similaire qui sont encore. Link to comment Share on other sites More sharing options...
kiteman Posted May 9, 2012 Author Share Posted May 9, 2012 Bonjour, Merci labelandco pour ta réponse rapide. Effectivement c'est bien ce que j'essaie de faire, mais je me vois mal ajouter des redirections à la mano dans htaccess pour plusieurs centaines de produits et d'autres à venir tous les jours. C'est pour cela que je recherche une solution plus globale pour effectuer une redirection vers la page de la catégorie du produit absent, plutôt qu'un 404. J'ai bien trouvé un module pour cela mais qui ne s'adresse qu'aux produits désactivés (pas les supprimés) Je pense que dans le code, il va falloir intervenir sur le productcontroller.php /* * If the product is associated to the shop * and is active or not active but preview mode (need token + file_exists) * allow showing the product * In all the others cases => 404 "Product is no longer available" */ if (!$this->product->isAssociatedToShop() || ((!$this->product->active && ((Tools::getValue('adtoken') != Tools::encrypt('PreviewProduct'.$this->product->id)) || !file_exists(_PS_ROOT_DIR_.'/'.Tools::getValue('ad').'/ajax.php'))))) { header('HTTP/1.1 404 page not found'); $this->errors[] = Tools::displayError('Product is no longer available.'); } else if (!$this->product->checkAccess(isset($this->context->customer) ? $this->context->customer->id : 0)) Mais là, je bloque. Link to comment Share on other sites More sharing options...
-stephane Posted May 9, 2012 Share Posted May 9, 2012 (edited) Plusieurs pistes: - La balise Meta Expires - Passer tes fiches produits en noindex puisqu'elles bougent rapidement et n'indexer que tes pages catégories - Ne pas supprimer les fiches, mais ne pas les afficher dans les résultats des visiteurs, donc qu'elles n'apparaissent pas quand les visiteurs visitent une catégorie ou font une recherche... (là faut coder ou créer cette catégorie "tampon" dont tu parlais) Edited May 9, 2012 by -stephane (see edit history) Link to comment Share on other sites More sharing options...
kiteman Posted May 9, 2012 Author Share Posted May 9, 2012 Merci Stéphane pour cette réponse. C'est délicat de ne pas indexer car il y a des produits qui partent vite et d'autres qui séjournent plusieurs semaines, voire mois. Ne pas les supprimer, j'y ai pensé mais dans ce cas le visiteur se retrouve par le lien Google vers un produit indisponible à la vente. Pas top. En tout cas cela me permet d'avancer dans ma réflexion. Merci pour ton avis. Link to comment Share on other sites More sharing options...
-stephane Posted May 12, 2012 Share Posted May 12, 2012 (edited) Merci Stéphane pour cette réponse. C'est délicat de ne pas indexer car il y a des produits qui partent vite et d'autres qui séjournent plusieurs semaines, voire mois. Ne pas les supprimer, j'y ai pensé mais dans ce cas le visiteur se retrouve par le lien Google vers un produit indisponible à la vente. Pas top. En tout cas cela me permet d'avancer dans ma réflexion. Merci pour ton avis. Donc un produit vendu ne reviendra jamais en ligne? J'ai pas vu ton site mais partons du principe que tu vendes une Renault Mégane 1994 verte (oué j'aime bien être précis dans mes exemples), la voiture est vendue, mais 6 mois plus tard tu as à nouveau une autre Renault Mégane 1994 verte. Que fais tu? Tu réactives la fiches ou tu en crées une nouvelle? Parce que dans ces cas: - Si tu réactives la fiche il faudrait créer une redirection 302 vers la catégorie concernée pour renvoyer tes visiteurs Google vers les autres produits de la catégorie. (302= redirection temporaire, tu peux réactiver la fiche plus tard) - Si tu crées une nouvelle fiche, il faut que l'ancienne fasse une redirection 301 vers la catégorie concernée. (301 = redirection permanente, la fiche ne sera plus jamais indexée par Google) Faudrait un module pour gérer ça automatiquement, si quantité = 0 alors redirection 301 ou 302 vers catégorie. Je m'avance hein, je suis référenceur, pas dév, mais sache que mon agence est certifiée prestashop et n'est pas constituée que d'un référenceur sympa et beau garçon (huhu...) mais est dotée de 2 très bons dévs qui font du custom si besoin. Je peux leur demander de faire un devis pour ça si tu le souhaites. Edited May 12, 2012 by -stephane (see edit history) Link to comment Share on other sites More sharing options...
kiteman Posted May 15, 2012 Author Share Posted May 15, 2012 Effectivement Stéphane, tu as parfaitement résumé la situation. Dans mon cas, je recrée une nouvelle fiche, donc, je cherche à rediriger vers l:a catégorie par défaut, du produit. J'ai déjà un peu avancé sur le sujet. Mais je garde ta proposition sous le coude et manquerai pas de te faire appel si besoin. Merci Link to comment Share on other sites More sharing options...
kelcible Posted August 16, 2012 Share Posted August 16, 2012 Bonjour Kiteman as-tu trouvé une solution efficace à ton problème ? je souhaiterai moi aussi rediriger mes visiteurs lorsqu'un produit n'est plus disponible. Link to comment Share on other sites More sharing options...
Prestapascher Posted August 16, 2012 Share Posted August 16, 2012 (edited) Pour moi après plusieurs réflexions je pense avoir trouvé ce qu'il faut (je répète pour moi). Je vais tout simplement mettre les produits hors stock avec un message: Ce produit à été victime de son succès, mais n'hésitez pas à consulter nos nombreux autres produits. Au moins le client qui tombe dessus à un contenu, il est sur le site, et google ne balancera pas des 404 à tout va. Après il y a la solution de balancer sur une page type avec le bloc recherche cela peut être sympa mais il faut se taper toutes les redirections 301. Edited August 16, 2012 by hitechstore (see edit history) Link to comment Share on other sites More sharing options...
kiteman Posted September 8, 2012 Author Share Posted September 8, 2012 (edited) Pour ma part, j'ai donc surchargé le productcontroller.php en remplaçant le code du 404 par un 301 et une redirection vers la catégory par défaut. if ((!$this->product->active AND (Tools::getValue('adtoken') != Tools::encrypt('PreviewProduct'.$this->product->id)) || !file_exists(dirname(__FILE__).'/../'.Tools::getValue('ad').'/ajax.php'))) { $url=self::$link->getCategoryLink($this->product->id_category_default); header('Status: 301 Moved Permanently', false, 301); header("Location: ".$url); } elseif (!$this->product->checkAccess((int)self::$cookie->id_customer)) $this->errors[] = Tools::displayError('You do not have access to this product.'); else Edited September 8, 2012 by kiteman (see edit history) 2 Link to comment Share on other sites More sharing options...
[email protected] Posted December 3, 2012 Share Posted December 3, 2012 Dures, dures les redirections URL. Obligé de se taper le .htaccess, y compris pour des centaines de redirections. Sur Joomla, y a un module fourni de base complétement opérationnel pour gérer tout ça (et heureusement d'ailleurs !). J'hallucine pour un CMS du niveau de Prestashop ! Pas un module de base pour faire un truc si important (ou alors je dois être c** et j'ai rien compris au web). Le pire, c'est qu'il n'y a même pas un module commercial pour faire ça !!!! J'hallucine ... :blink: Link to comment Share on other sites More sharing options...
-stephane Posted December 11, 2012 Share Posted December 11, 2012 Tout dépend de ce qu'il y a à faire, parfois des centaines de redirections se gèrent en quelques lignes de code. Link to comment Share on other sites More sharing options...
kiamaru Posted November 17, 2013 Share Posted November 17, 2013 Pour ma part, j'ai donc surchargé le productcontroller.php en remplaçant le code du 404 par un 301 et une redirection vers la catégory par défaut. if ((!$this->product->active AND (Tools::getValue('adtoken') != Tools::encrypt('PreviewProduct'.$this->product->id)) || !file_exists(dirname(__FILE__).'/../'.Tools::getValue('ad').'/ajax.php'))) { $url=self::$link->getCategoryLink($this->product->id_category_default); header('Status: 301 Moved Permanently', false, 301); header("Location: ".$url); } elseif (!$this->product->checkAccess((int)self::$cookie->id_customer)) $this->errors[] = Tools::displayError('You do not have access to this product.'); else salut comment tu fais pour surcharger? tu peux me donner le fichier en question mais en ramplancant 301 par 302 (temporaire) merci Link to comment Share on other sites More sharing options...
labelandco Posted November 18, 2013 Share Posted November 18, 2013 bonjour, je doute que vous ayez une réponse. En effet ressortir un topic de 2012 n'est pas la meilleure solution je ferme le topic... merci de creer un nouveau sujet Link to comment Share on other sites More sharing options...
Recommended Posts