Drupal 7: uno sguardo ai moduli

Drupal 7: uno sguardo ai moduli
Drupal 7: uno sguardo ai moduli

Drupal 7 ha introdotto molte novità nel panorama dei principali moduli che gli sviluppatori di siti web in Drupal adottavano: molti sono stati integrati direttamente nel cuore di Drupal 7, altri sono già disponibili, mentre la maggioranza risulta ancora assente. In particolare questi ultimi, i moduli non ancora portati in Drupal 7, determineranno la fattibilità di nuovi siti web in Drupal 7.

Drupal 7 è arrivato, tutti i siti e blog dedicati a Drupal ne parlano e, se da una parte molti dicono che Drupal 7 non è pronto per sviluppare siti web, qualcuno si azzarda ad affermare che Drupal 7 è già pronto per realizzare alcuni siti web. Quindi?

Quello che possiamo dire è che Drupal 7 c’è, è pronto, ma dipende.

Il cuore di Drupal 7 è formato, c’è un nuovo tema (Seven) per l’area di amministrazione ed un nuovo tema per le pagine del sito (Bartik) ed i moduli cominciano a prolificare nelle versioni per Drupal 7. Ma chi c’è e chi non c’è? E soprattutto, di chi non sentiremo più parlare?

Moduli integrati in Drupal 7…

Molte funzionalità sono state integrate direttamente nel core di Drupal 7. Molti moduli non esisteranno più come tali, ma come parte integrante di Drupal, perché riconosciuti essenziali per Drupal stesso, tanto da rendere una scelta obbligata la loro intrinseca presenza nel sistema piuttosto che sottoforma di componenti aggiuntivi.

Ad esempio?

La gestione dell’upload dei file e delle immagini.

I moduli per l’upload dei file, come File field, Upload element e Upload preview non verranno più mantenuti. La gestione dell’upload dei file viene ora gestita direttamente dal core di Drupal 7, come qualsiasi altra entità di Drupal 7.

Inoltre, Drupal 7 è la prima release con il supporto nativo per le immagini. Adesso è disponibile un campo “immagine” che permette di aggiungere un’immagine dove è richiesta, specificandone lo stile mediante l’apposito menu di configurazione. Questo permette di definire differenti stili (dimensione e scala, ad esempio) per la stessa immagine, a seconda di dove viene inserita. Insomma, i moduli ImageCache ed ImageField sono stati assorbiti dal progetto Drupal e come tali saranno mantenuti.

Vertical Tabs

Finalmente, le opzioni dei campi sono di default strutturate con tab verticali, implementando quello che Vertical Tabs permetteva in Drupal 6: un ordine nella caoticità delle impostazioni. Usabilità è infatti una parola chiave per Drupal e in particolare per Drupal 7 che conquista, con questo accorgimento, un notevole miglioramento nella gestione delle opzioni delle molteplici configurazioni disponibili agli utenti.

Content Construction Kit (CCK)

Content Construction Kit (CCK) in realtà dovrebbe essere inserito un po’ in questa sezione e un po’ in quella che segue, cioè in quella di chi resta e c’è già. I campi sono diventati un nuovo paradigma per Drupal 7, quindi CCK in parte è entrato di ruolo nel cuore di Drupal 7, consentendo di aggiungere campi a qualunque entità (nodi, utenti, termini di tassonomia ecc.).

Altri moduli integrati nel core Drupal

Anche la gestione dei test automatizzati, disponibili con l’abilitazione di SimpleTest in Drupal 6, sono stati trasferiti nel core, rendendo Drupal 7 più stabile delle altre release di Drupal e permettendo lo sviluppo di moduli con test più specifici e vari.

Anche 404 Blocks dovrebbe stare un po’ qui e un po’ là come CCK. Sebbene Drupal 7 mantenga i blocchi contenuti nelle regioni anche nelle pagine non trovate, è ancora necessario un modulo, 404 Navigation, per mantenere i link per aiutare l’utente quando si imbatte in una pagina “404 not found”.

Checkbox Validate, invece, è definitivamente non più necessario, da quanto il bug relativo alle checkbox richieste per validazioni (ad esempio per spuntare termini di accordo durante le registrazioni), che non funzionavano correttamente in Drupal 6, è stato finalmente risolto in Drupal 7, rendendo superflua la presenza di questo modulo.

Per quanto riguarda i ruoli di amministrazione, anche Admin role non è più necessario: in Drupal 7 è stata implementata la possibilità di specificare il ruolo di amministrazione con un dettaglio sufficientemente elevato.

Finalmente, in Drupal 7 sono disponibili un menu dedicato, associabile ad ogni tipo di contenuto, e un menu specifico per i link di amministrazione per una migliore organizzazione, rendendo Menuless Node Type e Menu Settings per Content Type superflui in quanto ora fanno parte del core.

A differenza delle precedenti versioni, con Drupal 7 la tassonomia è diventata un oggetto estendibile con più campi allo stesso modo dei nodi e di qualsiasi altra entità. Il modulo Taxonomy di Drupal 7, quindi, offre non solo associazioni a contenuti, ma molta più flessibilità grazie all’integrazione di funzionalità prima possibili con moduli come Content Taxonomy, Field Taxonomy e Term fields.

Drupal 7 ora dà la possibilità di impostare ad un utente il permesso di cancellare il proprio account, specificandone le modalità (per esempio, scegliendo se cancellare o meno tutti i dati per questioni legali).

Ritorna in Drupal 7 una funzionalità che era presente in Drupal 5 e per Drupal 6 era disponbile attraverso il modulo Block node visibility. Si tratta della possibilità di configurare la visibilità di un blocco in base ad un tipo di contenuto.

…e tutti gli altri moduli

Per quello che riguarda tutti gli altri moduli, molti sono già stati aggiornati per poter funzionare in Drupal 7 come ad esempio Organic Groups, XMLSitemap, Global Redirect, WYSIWYG e altri che hanno cambiato pelle, come ad esempio il vecchio Site Configuration Permissions. Custom Permissions, infatti, il suo nuovo nome, rispecchia maggiormente il nuovo compito del modulo, che con Drupal 7 permette di definire in maniera più granulare i ruoli di amministrazione.

Infine, rimangono da citare alcuni dei più importanti module che restano fuori, e che sono ancora molti, come Workflow o Revisioning. C’è poi un grande quantità di moduli che hanno delle versioni preliminari pronte per Drupal 7, ma che non sono ancora stabili, come ad esempio i18n o Page Title.

Considerazioni finali su Drupal 7

Il numero di moduli disponibili per Drupal 7 è già consistente e le funzionalità prima offerte da estensioni ed ora integrate nel core fanno sì che sia possibile creare già ora dei siti web in Drupal 7. Però la mancanza di molti moduli (o la presenza di versioni in fase di sviluppo) potrebbe essere un deterrente e comporta una attenta analisi preliminare nel caso si debba realizzare un sito in Drupal a breve.