Group roles

Is there a way to create and assign different user roles for specific groups?

For example I have 3 groups, Group1 and Group2 owned by user Alice and Group3 owned by user Bob. I need user Cindy to have moderator role in Group1 and not in Group2 and Group3, user Bob is moderator for Group2 and not for Group1, user Dave has moderator role for Group1 and Group2 and not Group3 while user Eva is just a member of all 3 groups.

Is anything like this even possible to do in Elgg? Any existing plugins that do that?


  • You can do it with Roles plugin + some Groups' customizations

  • Possible to do but not easy. Just finished a similar project and it was complicated.

  • It's definitely possible, but definitely some custom coding involved.  I have also done this, complexity probably depends on the capabilities of the roles.

  • Thank you all for answers.

    RvR, I took a look at Roles plugin before posting here, but it does not meet my needs, as it sets "global" roles, while I need group specific roles.

    It appears I'll have to code it myself, so a few pointers how to do it would be very useful. What would be the best way to store the roles and user - group - role relationships?


  • The project I was working on had a twofold requirement:

    • maintain roles withing groups
    • allow defining roles even before users joined the site

    So, I created a new object type owned and contained by the group that had email address and role as metadata. Whenever a user joins the site, they automatically become members of the groups where they have a membership record. All matching done via email address. When checking permissions, I just load the membership record for the group/email and allow/deny permissions based on role metadata.

Beginning Developers

Beginning Developers

This space is for newcomers, who wish to build a new plugin or to customize an existing one to their liking