Drupal è un content management framework, content management system (CMS) modulare scritto in linguaggio PHP e distribuito sotto licenza GNU GPL.
Un CMS è uno strumento usato dai webmaster per gestire un sito web evitando di dover programmare dinamicamente l’intero software lato server che gestisce il sito.
Molti CMS contemporanei, compreso Drupal, offrono un’interfaccia di amministrazione con cui l’amministratore può gestire ogni aspetto del sito web, senza il bisogno di possedere conoscenze tecniche particolari di programmazione Web.
Drupal funziona su diversi sistemi operativi, tra cui Windows, Mac OS X, Linux e qualsiasi piattaforma che supporti i web server Apache (versione 1.3 o superiore) o IIS (versione 5 o superiore) e il linguaggio PHP (versione 4.3.3 o superiore).
Drupal utilizza inoltre un database per memorizzare i contenuti, e necessita dunque di un software come MySQL e PostgreSQL che sono gli unici DBMS al momento supportati.
La struttura di Drupal
Drupal ha ricevuto elogi da webmaster, progettisti e programmatori, in parte grazie al suo design modulare che permette al suo livello base, o «core» di fornire solo le funzioni essenziali nella sua configurazione predefinita.
Funzioni e capacità di visualizzazione aggiuntive possono estendere il «core» tramite l’installazione di moduli e temi.
Il «core» di Drupal contiene i propri moduli.
Funzionalità:
Inserire, modificare e catalogare i contenuti
Eseguire ricerche
Inserire commenti
Partecipare a forum
Rispondere a sondaggi
Lavorare a progetti di scrittura collaborativa
Inserire e visualizzare i profili degli utenti
Comunicare tra gli utenti e con gli amministratori del sito
Modificare l’aspetto del sito utilizzando temi grafici già sviluppati e pronti all’uso
Creare menu su più livelli della struttura di navigazione
Localizzare l’interfaccia in diverse lingue, permettendo all’utente di scegliere
Fornire feed RSS
Aggregare e presentare i contenuti RSS di altri siti
Registrare nuovi utenti e gestirne gli account
Gestire in modo granulare permessi e ruoli per i singoli utenti o per interi gruppi
Usare regole per impedire l’accesso al sito a determinati utenti in base a nome, indirizzo e-mail, indirizzo IP
Collezionare e presentare statistiche dettagliate del sito
Gestire il caching delle pagine ed il throttling, funzionalità che permette di disabilitare alcuni moduli/blocchi in caso di alto traffico del sito
Creare e specificare vari filtri sull’input degli utenti e diversi modelli di contenuto
Generare indirizzi semplici da ricordare, permettendo una migliore catalogazione ai motori di ricerca
Inoltre, il sito di Drupal contiene centinaia di moduli gratuiti sviluppati dalla comunità.
Alcune delle funzionalità fornite o migliorate dai moduli sviluppati dagli utenti:
Sistemi e-commerce
Flusso di lavoro redazionale
Gallerie fotografiche
Gruppi autogestiti
Sitemap di Google
Gestione di mailing list
Integrazione con CVS
Gestire immagini e video
Gestire servizi di terze parti (Adsense, AuctionAds, Technorati, etc.)
