Drupal Group module: community

Cos'e' Group

Group e' il modulo contrib di riferimento per gestire community, organizzazioni, gruppi privati o pubblici in Drupal. Sostituisce il vecchio Organic Groups (OG) con un'architettura moderna basata su entità Group dedicate, ruoli e permessi per gruppo.

Casi d'uso

  • Intranet aziendali con team/dipartimenti
  • Community con sub-community private
  • Multi-tenant editoriale (testate sotto stesso CMS)
  • Università con corsi e studenti
  • Associazioni con sezioni territoriali

Installazione

composer require drupal/group
drush en group

Group types

Si definiscono Group types (es. Departments, Projects, Branches) come bundle. Ogni group type ha:

  • Campi propri (es. Department: budget, manager)
  • Ruoli interni (Member, Editor, Admin del gruppo)
  • Permessi specifici per ruolo

Group content

I contenuti vengono associati a un gruppo tramite GroupContent (relazione N:M). Si configura quali entity type/bundle sono ammessi (es. Article + User + Media nel gruppo Project).

Ruoli interni

Ogni gruppo ha ruoli interni indipendenti dai ruoli globali Drupal. Mario può essere "Editor" globale ma "Member" nel gruppo X e "Admin" nel gruppo Y. I permessi sono valutati nel contesto del gruppo.

Permessi granulari

Per ogni group type e ruolo: "View group", "Edit group", "Delete group", "Add Article to group", "Edit own Article in group", "Edit any Article in group". Granularità equivalente al sistema globale Drupal ma scoped al gruppo.

Membership

Un'utente diventa member di un gruppo via:

  • Auto-iscrizione (se permesso)
  • Invito da admin del gruppo
  • Richiesta + approvazione
  • Aggiunto programmatic via API

Group access

I contenuti dentro un gruppo sono filtrati automaticamente: solo i member vedono i contenuti del gruppo privato. View, search, blocchi sono group-aware quando si usano i token relativi.

Views integration

Views espone i Group come entity type. Si creano dashboard "I miei gruppi", "Membri del gruppo X", "Ultimi contenuti del mio team".

Sub-groups

Il modulo subgroup consente gerarchie: Department -> Team -> Project. I permessi si ereditano dal parent.

Performance

Per community molto grandi (1000+ gruppi, 100k+ membership) attenzione alle query: le group_content tables crescono. Indicizzazione DB e cache aggressiva sono essenziali.

Hai bisogno di aiuto?

Se vuoi un sito Drupal performante dal team di G Tech Group, scrivici tramite il modulo di contatto.

Hai trovato utile quest'articolo?