Submitted by ringolepanda on
Je but sur ce truc depuis plusieur jours.
Il est important de renseigner visuellement le visiteur sur l'endroit où il est dans le site. Les miettes de pain ne sont pas suffisant à mon goût. Donc je souhaite que, si on se trouve dans une sous-rubrique (ici un lien secondaire), l'onglet de la rubrique dans laquelle se trouve cette sous-rubrique soit aussi dans visuellement dans l'état actif.
Cette problèmatique doit-être assez banale. J'ai trouvé quelques éléments de réponse dans ce thread : http://drupalfr.org/node/1027. J'ai regardé les fonctions générant les menus primaires et secondaires dans la template.php, la page.tpl.php, le menu.inc (notamment la fonction theme_menu_links.
Mais je ne comprends toujours pas comment et où sont générés ces menus et quelle condition mettre pour avoir la class active pour la rubrique et sa sous rubrique ?
Peut-être que passer par un menu généré en fonction de la taxonomy est intéressant.
Dans le thème, les menus
Permalien Soumis par Zigazou le 16 Mars, 2007 - 08:45
Dans le thème, les menus sont gérés au final par le fichier block.tpl.php (pour PHPTemplate), les variables mises à disposition permettent de déterminer le type de block à afficher ainsi que l'identifiant du block ou menu.
Est-ce que ca t'aiderai ca
Permalien Soumis par tostinni le 16 Mars, 2007 - 15:42
Est-ce que ca t'aiderai ca ?
http://drupalfr.org/node/1027#comment-2722
Il me semble que ce que tu
Permalien Soumis par drupalfrance le 17 Mars, 2007 - 11:56
Il me semble que ce que tu décris est le comportement par défaut... à condition que...
... ton menu soit bien construit (les sous-rubriques sont rattachées aux rubriques, et surtout, les nodes qu'on trouve dans les sous-rubriques leurs sont rattachés également, CE QUI N'EST PAS LE CAS PAR DEFAUT. Si j'ai bien compris, Zigazou a codé un module pathmenu qui permet de faire ça.
Si j'ai bien compris,
Permalien Soumis par Zigazou le 17 Mars, 2007 - 13:26
Si j'ai bien compris, Zigazou a codé un module pathmenu qui permet de faire ça.
Mais il ne fonctionne pas encore sur Drupal 5.x...
Bon j'y arrive pas, mais
Permalien Soumis par ringolepanda le 23 Mars, 2007 - 02:29
Bon j'y arrive pas, mais alors pas du tout.
J'ai ouvert le fichier page.tpl.php pour modifier ma template. Mais je n'arrive pas à remonter le fil jusqu'à le calcul de l'expression servant à produire le menu : theme('menu_links', $primary_links). J'ai regardé dans template.php, dans menu.inc, dans theme.inc. Il n'est pas mention de $primary_links.
Quelqu'un pourrait-il m'orienter ?
trouvé
Permalien Soumis par ringolepanda le 24 Mars, 2007 - 18:25
Ayé.
En faite la réponse se trouve dans le fichier include menu.inc (répertoire includes). La fonction function menu_primary sert à produire le menus primaires et secondaires en fonction de la page active. Elle associe à chaque rubrique des identifiants en tant qu'attribut (comprends pas trop pourquoi, mais bon) ex : 1-23-active (voir code source d'une page).
Il suffit de rajouter après -active : " active". Et ça marche.
Voilou.