LETB Posted May 27, 2013 Share Posted May 27, 2013 Bonsoir la communauté, voilà je cherche à créer une redirection d'une page catégorie cms vers sa page fille, en gros je veux que lorsque l'internaute clique sur l'item de la page catégorie il soit redirigé vers le premier enfant de celle-ci donc une page CMS. J'ai essayé d'implémenter du HTML dans le champ description pour faire un redirect mais celui-ci n'accepte pas le code. Comment faire ? Merci à vous. Link to comment Share on other sites More sharing options...
Broceliande Posted May 27, 2013 Share Posted May 27, 2013 Bonsoir la communauté, voilà je cherche à créer une redirection d'une page catégorie cms vers sa page fille, en gros je veux que lorsque l'internaute clique sur l'item de la page catégorie il soit redirigé vers le premier enfant de celle-ci donc une page CMS. J'ai essayé d'implémenter du HTML dans le champ description pour faire un redirect mais celui-ci n'accepte pas le code. Comment faire ? Merci à vous. Si je décortique l'utilisation que tu souhaites faire des pages cms et des catégories, j'ai l'impression que tu utilises les catégories cms comme alias de page , et rien d'autre. Pourquoi alors ne pas simplement nommer tes pages avec leur alias respectif et utiliser le bloc cms sans ces catégories inutiles ? Link to comment Share on other sites More sharing options...
c3d Posted July 31, 2013 Share Posted July 31, 2013 J'ai le même problème. Ce n'est pas que j'utilise une catégorie comme un alias, c'est lié à la façon dont fonctionne le module blocktopmenu. J'utilise blocktopmenu pour avoir un menu rempli de quelques catégories CMS. Du coup, sous chaque bouton de menu, on a une liste des pages qu'on peut atteindre. Mais quand on clique dans le bouton proprement dit, on tombe sur la catégorie. Je préférerai pouvoir atteindre une page spécifique de la catégorie dans ce cas, et la page par défaut listant la catégorie ne me semble pas super utile. J'ai cherché trois angles d'attaque, aucun des trois ne semble marcher : Une option dans blocktopmenu me permettant de décider où pointe le bouton Une option dans les catégories CMS pour personnaliser la page qui liste la catégorie. Il n'y a pas grand chose. Même la description de la catégorie n'apparaît pas, seulement la liste des pages filles. Une redirection par un autre moyen Bon, ben va falloir bidouiller le PHP, mais je pense que ça serait utile. Link to comment Share on other sites More sharing options...
c3d Posted July 31, 2013 Share Posted July 31, 2013 Bon, ben va falloir bidouiller le PHP, mais je pense que ça serait utile. Alors j'ai fait un choix (arbitraire) de faire que blocktopmenu sélectionne le premier article de la catégorie par défaut. La modification de blocktopmenu est la suivante: diff --git a/modules/blocktopmenu/blocktopmenu.php b/modules/blocktopmenu/blocktopmenu.php index a47f6cc..d9cf25d 100755 --- a/modules/blocktopmenu/blocktopmenu.php +++ b/modules/blocktopmenu/blocktopmenu.php [spam-filter] -542,7 +542,7 [spam-filter] class Blocktopmenu extends Module $category = new CMSCategory((int)$id, (int)$id_lang); if (count($category)) { - $this->_menu .= '<li><a href="'.$category->getLink().'">'.$category->name.'</a>'; + $this->_menu .= '<li><a href="'.$this->getCMSCategoryLink($category).'">'.$category->name.'</a>'; $this->getCMSMenuItems($category->id); $this->_menu .= '</li>'.PHP_EOL; } [spam-filter] -694,6 +694,22 [spam-filter] class Blocktopmenu extends Module } } + private function getCMSCategoryLink($category) + { + $id_lang = (int)Context::getContext()->language->id; + + $pages = $this->getCMSPages((int) $category->id); + + if (count($pages)) + { + $page = $pages[0]; + $cms = new CMS($page['id_cms'], (int)$id_lang); + $links = $cms->getLinks((int)$id_lang, array((int)$cms->id)); + return $links[0]['link']; + } + return $category->getLink(); + } + private function getCMSOptions($parent = 0, $depth = 1, $id_lang = false) { $id_lang = $id_lang ? (int)$id_lang : (int)Context::getContext()->language->id; 1 Link to comment Share on other sites More sharing options...
plugins Posted August 21, 2014 Share Posted August 21, 2014 Bonjour à tous, Est ce que quelqu'un saurait faire avec la version de Presta 1.5.6.2 et la version 1.6 du module ? Le post étant un peu âgé cette solution ne fonctionne plus ... Merci par avance ! Link to comment Share on other sites More sharing options...
samyha Posted August 28, 2014 Share Posted August 28, 2014 Hello, En effet ce topic date d'il y a un an. Je t'invite à créer le tien dans "Développement" Link to comment Share on other sites More sharing options...
mikado54 Posted December 29, 2014 Share Posted December 29, 2014 Alors j'ai fait un choix (arbitraire) de faire que blocktopmenu sélectionne le premier article de la catégorie par défaut. La modification de blocktopmenu est la suivante: Merci c3d, fonctionne pour moi sur 1.6.0.9 Link to comment Share on other sites More sharing options...
dkbane Posted March 3, 2015 Share Posted March 3, 2015 Redir 301 sinon ? 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