Comment puis-je limiter l'accès au menu par rôle dans Drupal?
Je suis en train de construire un site Drupal, et l'ajout de deux menus personnalisés pour donner deux groupes différents de gestion des liens (certaines personnes vont voir un menu ou l'autre, certains vont voir les deux, et anonyme/bas-niveau, les utilisateurs pourront voir ni).
Le problème est, à l'heure actuelle, tous les utilisateurs peuvent voir les menus (mais les éléments de menu ne sont pas visibles).
Je suis en train de créer un simple autorisations module - et ont créé les formes d'administration, qui précisent les menus sont consultables par qui de rôle.
Mais je ne peux pas trouver un crochet qui me permet de remplacer la visibilité d'un menu particulier - seuls les éléments.
Alors, comment puis-je limiter l'accès au menu par rôle dans Drupal maintenant que j'ai une liste d'autorisations dans la base de données?
--
J'ai regardé Menu par Rôle et Accès au Menu. Malheureusement, ces travaux au niveau de l'article et non pas sur les menus directement.
OriginalL'auteur HorusKol | 2011-02-21
Vous devez vous connecter pour publier un commentaire.
Chaque menu est dans un bloc, et les blocs peuvent être configurés pour être visibles pour les utilisateurs du groupe (niveau d'accès).
Sur drupal admin du site: Structure/Blocs
OriginalL'auteur steve
Menu Par Rôle module?
http://drupal.org/project/menu_per_role
OriginalL'auteur Kevin
Aussi longtemps que vous utilisez un bloc comme un menu, vous pouvez utiliser l'accès par rôle pour la définition de blocage, fourni par le noyau.
OriginalL'auteur Daniel Wehner
Pour la liste des menus cette fonction de travail: menu_get_names();
Mais il n'a pas d'autorisation de chèques ou de crochets.
Où avez-vous voulez restreindre la liste de menu? si, à l'édition de nœuds, vous pouvez modifier le menu de là, via hook_form_alter.
OriginalL'auteur Nikit
Ce n'est pas la solution la plus élégante, mais vous pouvez faire votre contrôle d'accès dans le thème.
OriginalL'auteur mirzu
Je suis venu avec une solution - au lieu d'utiliser l'auto-générés menu blocs pour l'affichage, j'ai créé un seul bloc et de mettre le code suivant dans mon module:
Cela semble bien fonctionner.
OriginalL'auteur HorusKol