andy1988 Posted January 13, 2014 Share Posted January 13, 2014 Bonjour à tous ! Je vous demande votre aide car je n'arrive pas à résoudre un souci sur ma boutique, alors que c'est surement une solution bête... Alors voila, j'ai un menu avec plusieurs catégorie de produit, quand je clique sur une catégorie, j'arrive donc vers ma liste de produit... hors dans une catégorie je n'ai qu'un seul produit, et j'aimerais arriver directement sur la fiche technique du produit, sans passer vers la liste de tous les produits, vu que pour le moment, j'en ai qu'un seul... Merci par avance pour votre aide . Amicalement ! Link to comment Share on other sites More sharing options...
Szed Posted January 13, 2014 Share Posted January 13, 2014 Hello, ce n'est "simplement" pas faisable. Deux solutions - aller modifier le controller adéquat (surement Category.php) de prestashop pour checker si il y a un ou plusieurs produits dans la cat. Si un seul > on redirige. Ca a peut être déjà été fait, le sujet revient régulièrement il me semble. - passer par un modules de menu avancé, qui vous permettra de mettre les liens que vous souhaitez dans votre menu (que ce soit vers une catégorie, un produit, un lien externe...) Link to comment Share on other sites More sharing options...
andy1988 Posted January 13, 2014 Author Share Posted January 13, 2014 Hello, ce n'est "simplement" pas faisable. Deux solutions - aller modifier le controller adéquat (surement Category.php) de prestashop pour checker si il y a un ou plusieurs produits dans la cat. Si un seul > on redirige. Ca a peut être déjà été fait, le sujet revient régulièrement il me semble. - passer par un modules de menu avancé, qui vous permettra de mettre les liens que vous souhaitez dans votre menu (que ce soit vers une catégorie, un produit, un lien externe...) Merci beaucoup ! Je ne vais donc pas allez trifouiller ce code source, sachant que c'est histoire de quelques jours ! Merci encore ! Link to comment Share on other sites More sharing options...
jeffisnotdead35 Posted January 5, 2016 Share Posted January 5, 2016 (edited) Hello, ce n'est "simplement" pas faisable. Deux solutions - aller modifier le controller adéquat (surement Category.php) de prestashop pour checker si il y a un ou plusieurs produits dans la cat. Si un seul > on redirige. Ca a peut être déjà été fait, le sujet revient régulièrement il me semble. - passer par un modules de menu avancé, qui vous permettra de mettre les liens que vous souhaitez dans votre menu (que ce soit vers une catégorie, un produit, un lien externe...) Bonjour Szed, Je suis exactement à la recherche de cette fonction. Je ne trouve aucun sujet sur ce thème pour lequel une solution à été apporté. Mon niveau en prog étant assez faible, je m'y remet petit à petit mais longtemps sans y avoir toucher, et malgré les bases et les principes qui reste, la pratique manque cruellement. Dans le contrôleur CategoryController.php, j'ai ajouté une condition qui test si il n'y a qu'un seul produit et si mon produit est dans une sous catégorie. Par contre je ne vois pas du tout comment faire pour récupérer l'url du produit qu'il détecte. Si quelqu'un a une solution ou un début de solution ce serait super sympa! Surtout que pour le moment dans la moitié de mes sous catégories je n'ai qu'un seul produit et que j'ai vraiment besoin de cette fonction! Merci d'avance! Edited January 5, 2016 by jeffisnotdead35 (see edit history) Link to comment Share on other sites More sharing options...
jeffisnotdead35 Posted January 5, 2016 Share Posted January 5, 2016 (edited) Bon, après m'êtres remis un peu dans le bain, j'ai peut être coder une solution. En tout cas cela fonctionne. Si quelqu'un pouvait me confirmer que ce bout de code est bien correct, et s'il correspond à la bonne pratique... Le principe que j'ai utilisé est une redirection vers la page du seul produit détecté grâce à son attribut "link" et si je me trouve dans une sous catégorie (2ème niveau ou plus) Dans la fonction assignProductList() du contrôleur de categorie "CategoryController.php" // If only one product in Sub Category, redirect to the product page if (($this->nbProducts == 1) && ($this->category->level_depth > 2)){ if (isset ($this->cat_products[0]["link"]) && $this->cat_products[0]["link"] != ""){ header('Location:'.$this->cat_products[0]["link"]); } } J'espère que j'aurai aidé quelques personnes... Evidemment ensuite, il faut faire un override de la classe en ajoutant à la méthode ces lignes de codes pour permettre la mise à jour de votre prestashop dans le futur sans perdre cette modification... Edited January 5, 2016 by jeffisnotdead35 (see edit history) 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