Opalie Posted May 11, 2015 Share Posted May 11, 2015 Bonjour Voilà, je voudrais éviter à mes visiteurs d'avoir à passer sur la page catégorie lorsqu'ils cliquent sur l'onglet du menu et qu'il n'est qu'à choisir la catégorie de produit directement sur le produit. Explication en image! Je voudrais passer de ma page d'accueil à ma liste produit sans avoir à voir cette page Je ne sais pas si c'est du BO ou du smarty/js/php ou autre et j'avoue que la personnalisation générale de prestashop 1.6 est assez complexe et très peu ergonomique.... Merci d'avance pour vos réponse! Ps: aucune difficulté sur les codes c'est que je suis perdue Link to comment Share on other sites More sharing options...
Ariane Web et Plus Posted May 12, 2015 Share Posted May 12, 2015 Je pense que le plus simple est d'enlever le lien sur la catégorie de niveau 1 dans le fichier .tpl du menu. Je ne peux pas te donner la marche à suivre, car c'est un thème personnalisé. Link to comment Share on other sites More sharing options...
Alexandre Carette Posted May 12, 2015 Share Posted May 12, 2015 Bonjour, Associer les produits à la catégorie Téléphonie. cordialement Link to comment Share on other sites More sharing options...
Opalie Posted May 12, 2015 Author Share Posted May 12, 2015 Bonjour En fait c'est le thème default bootstrap, j'ai juste adapter le thème au design de mon client. Malheureusement Alexandre-KM, je ne peux pas faire cela car il y a beaucoup trop de produits dans les catégories iPhone/iPad/etc... Du coup je pense que la solution d'Ariane est celle à suivre! Pourrais-tu m'éclairer un peu plus? Merci à vous pour m'avoir répondu! Link to comment Share on other sites More sharing options...
Opalie Posted May 13, 2015 Author Share Posted May 13, 2015 Bonjour Je vous relance car l'idée m'intéresse et je suis un peu prise par le temps Link to comment Share on other sites More sharing options...
Julien64 Posted May 13, 2015 Share Posted May 13, 2015 Bonjour, J'ai du mal à comprendre ce que vous souhaitez. Si j'ai bien suivi votre arbo a comme catégorie principale "Téléphonie" et sous-catégories "Iphone" "Ipad" etc... Donc à part mettre vos produits dans la catégorie principale comme l'indique Alexandre-KM... ou alors vous faites pointer le lien "Téléphonie" sur une sous-catégorie directement mais pourquoi envoyer vos clients sur la sous-cat "Iphone" s'ils cherchent plutôt du "Samsung" ?! L'utilisation de la navigation à facette serait certainement judicieuse pour filtrer vos produits s'ils sont si nombreux Link to comment Share on other sites More sharing options...
Opalie Posted May 13, 2015 Author Share Posted May 13, 2015 Bonjour Votre remarque est intéressante! J'utilise la navigation à facette justement, et ce que je souhaite c'est que le client n'utilise que le menu du haut (blocktopmenu) avec le système de menu déroulant comme ceci : Pour arriver ici directement, ce qui laisse au visiteur le choix de la catégorie de produit grâce à la navigation à facette : J'espère que c'est plus clair ^^ En tout cas je ne peux pas me permettre de supprimer mes catégories. Mon arborescence est très importante car les produits sont les mêmes mais les prix diffèrent selon le modèle du téléphone (c'est de la réparation c'est pour ça ) Link to comment Share on other sites More sharing options...
Julien64 Posted May 13, 2015 Share Posted May 13, 2015 Ok donc si je comprends mieux vous voulez simplement qu'il n'y ait pas de clic possible sur certains des liens principaux du menu horizontal. Si c'est bien ça en fonction du module utilisé vous pouvez éventuellement le paramétrer ou alors avec du JS vous ciblez le ou les liens que vous souhaitez "désactiver" et avec un "return false" ça devrait faire l'affaire Pour votre arbo ou vous avez plusieurs fois les mêmes produits mais avec des prix différents par modèle de tél, peut être serait-il judicieux d'utiliser les déclinaisons: 1 seul produit et le client choisi dans la fiche produit son téléphone et le tarif se met à jour. Link to comment Share on other sites More sharing options...
Opalie Posted May 13, 2015 Author Share Posted May 13, 2015 Super merci, j'utilise le module natif de presta donc j'imagin que je dois faire ces modifications dans les fichiers js du blocktopmenu? En ce qui concerne les déclinaisons, se sont des produits dématérialisés vu que les réparations sont faites non pas par le client mais par le prestataire. Le client réserve sa réparation (pièce et paiement) et envoie son téléphone au professionnel pour qu'il le répare. Du coup les déclinaisons 'fiout' ca passe sous le nez ^^, je pourrais les transformer en produit banal, mais il n'y a pas de livraison du coup... Et ça serai une autre affaire avec la finalisation de la commande... Enfin, pour l'instant ce n'est pas ce qui me dérange le plus en tout cas ^^ Mais j'apprécie vos conseils et j'en prend note Link to comment Share on other sites More sharing options...
Opalie Posted May 19, 2015 Author Share Posted May 19, 2015 Bonjour, Je tiens à vous relancer car je commence à être sérieusement inquiète car le temps va me manquer... Si Ariane de Web et Plus pouvait approfondir son raisonnement, cela m'aiderai beaucoup!! Je pense que c'est tout à fait la solution qu'il me faut! Merci d'avance Link to comment Share on other sites More sharing options...
Eolia Posted May 19, 2015 Share Posted May 19, 2015 ouvrez blocktomenuphp dans la fonction generateCategoriesMenu et remplacez-la par: private function generateCategoriesMenu($categories, $is_children = 0) { $html = $link = ''; foreach ($categories as $key => $category) { if ($category['level_depth'] > 1) { $cat = new Category($category['id_category']); if($cat->id_parent > 2) $link = Tools::HtmlEntitiesUTF8($cat->getLink()); } else $link = $this->context->link->getPageLink('index'); $html .= '<li'.(($this->page_name == 'category' && (int)Tools::getValue('id_category') == (int)$category['id_category']) ? ' class="sfHoverForce"' : '').'>'; $mini = $category['id_category'].'_mini.jpg'; if(file_exists(_PS_CAT_IMG_DIR_.$mini)) $html .= '<img src="'.$this->context->link->getMediaLink(_THEME_CAT_DIR_.$mini).'" style="height:40px;padding-top:10px" />'; $html .= $link ? '<a href="'.$link.'" title="'.$category['name'].'">'.$category['name'].'</a>' : $category['name']; if (isset($category['children']) && !empty($category['children'])) { $html .= '<ul>'; $html .= $this->generateCategoriesMenu($category['children'], 1); if ((int)$category['level_depth'] > 1 && !$is_children) { $files = scandir(_PS_CAT_IMG_DIR_); if (count($files) > 0) { $html .= '<li class="category-thumbnail">'; foreach ($files as $file) if (preg_match('/^'.$category['id_category'].'-([0-9])?_thumb.jpg/i', $file) === 1) $html .= '<div><img src="'.$this->context->link->getMediaLink(_THEME_CAT_DIR_.$file) .'" alt="'.Tools::SafeOutput($category['name']).'" title="' .Tools::SafeOutput($category['name']).'" class="imgm" /></div>'; $html .= '</li>'; } } $html .= '</ul>'; } $html .= '</li>'; } return $html; } la différence principale etant ici: if ($category['level_depth'] > 1) { $cat = new Category($category['id_category']); if($cat->id_parent > 2) $link = Tools::HtmlEntitiesUTF8($cat->getLink()); } 2 étant l'id de la catégorie Accueil normalement (si ce n'est pas le cas, remplacez-le par votre ID ) Ensuite regénérez votre menu. Les catégories directement enfants de l'accueil n'auront plus de lien Link to comment Share on other sites More sharing options...
Opalie Posted May 19, 2015 Author Share Posted May 19, 2015 Merci Eolia!!! C'est tout à fait ça et vos explications sont parfaitement claire Je vous remercie vraiment beaucoup! 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