Submitted by FraLeg on
Bonjour à tous,
J'ai créé un module pour un type particulier. Tout va bien pour la création et la modification, les objets sont bien créés avec le type "MonType" et j'ai un joli ensemble d'onglets (à 2 niveaux) qui apparaissent bien.
Tellement bien qu'il apparaissent aussi pour tous les autres types de "node", page et story !
J'ai ajouter dans monType_menu() des items du genre
$items['node/%node/blabla'] = array(
'title' => 'blabla',
'description' => 'blabla.',
'page arguments' => array(1, 'node' ),
'page callback' => '_monType_blabla',
'access arguments' => array('access content'),
'type' => MENU_LOCAL_TASK,
'weight' => 1,
);
Je comprends que si cela commence par 'node' alors c'est vrai tout le temps. Mais quand j'écris :
$items['monType/%node/blabla'] = array(
'title' => 'blabla',
'description' => 'blabla.',
'page arguments' => array(1, 'node' ),
'page callback' => '_monType_blabla',
'access arguments' => array('access content'),
'type' => MENU_LOCAL_TASK,
'weight' => 1,
);
cela ne marche pas.
Bizarrement je ne trouve pas d'exemple de module d'un nouveau type avec des menus. A chaque fois, les examples montrent un cas ou l'autre mais pas les deux ensembles.
Là j'ai peu que ce soit
Permalien Soumis par Yoran le 6 Novembre, 2009 - 16:36
Là j'ai peu que ce soit sans fond. En tout cas en Drupal 6 moi je n'ai pas trouvé la solution. Je ne pense pas non plus (mais je peux me tromper) que ta deuxième approche soit valable. Il manque à Drupal 6 la capacité de rendre un menu "dynamique", une sorte de "visibility callback". Je crois qu'une telle chose est maintenant possible en D7.
De mémoire, dans la 4 et la
Permalien Soumis par FraLeg le 7 Novembre, 2009 - 09:33
De mémoire, dans la 4 et la 5, il y avait une gestion de cache dans le menu. J'avais fait des menus en fonction des nid:
Mais c'est pas beau et lourd surement en mémoire.
Cela n'existe plus dans la version 6?
Question sous-jacente à mon problème, c'est le chemin d'accés à un nouveau type. Node est un type générique et le chemin est node/1 . J'ai mon type monType, comment créer mon propre chemin monType/1, avec ce que cela implique monType/1/edit etc.
Merci d'avance
Non c'est mort en v6 ça :)
Permalien Soumis par Yoran le 7 Novembre, 2009 - 19:59
Non c'est mort en v6 ça :) Malheureusement pour la souplesse, heureusement pour les perfs (tous les menus étaient rescannés à chaque construction de page).
Afin de "contourner" ton
Permalien Soumis par khtuluu le 6 Novembre, 2009 - 17:39
Afin de "contourner" ton problème tu pourraient créer des éléments pour un menu spécifique créé pour ton module. Ensuite tu peux assigner ce menu dans un block et gérer l'apparition de ces menus via les règles de gestion de ton bloc.
Je ne suis pas sûr d'être très clair ...
J'aime pas trop passer par
Permalien Soumis par FraLeg le 7 Novembre, 2009 - 09:26
J'aime pas trop passer par un bloc.