SlideShare une entreprise Scribd logo
1  sur  39
Chi siamo
L'Associazione Drupal Italia: un'organizzazione dedicata
  alla diffusione e alla conoscenza del CMS open source
  Drupal all'interno del territorio nazionale, collaborando
  con enti nazionali e internazionali del settore ICT.




                 http://drupalitalia.org
La nascita
                               Drupal nasce nel 2000, tra i banchi
                              dell'università di Anversa.

                              All'inizio si trattava di un piccolo sito
                                interattivo creato da Dries
                                Buytaert per permettere agli
                                studenti di inviare note e notizie
                                utili a tutti.
Associazione Drupal Italia – Treatabit                        Torino, 02/05/2012
Che cos'è?
  Drupal è un content management system: uno
    strumento software studiato per facilitare la
    gestione dei contenuti di siti web


   Ha un'architettura lego style, è scritto in PHP ed
     è distribuito sotto GNU GPL licence.




  Offre un' interfaccia di amministrazione
    attraverso la quale è possibile gestire ogni
    singola parte del sito web, senza possedere
    skill di programmazione.



Associazione Drupal Italia – Treatabit                  Torino, 02/05/2012
Cosa si può fare con Drupal?

       Weblog
       Community Web Site
       Forums
       Social Network Site
       Wiki/Knowledge Base
       Business Web Application




Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Punti di Forza                   Punti di Debolezza




Associazione Drupal Italia – Treatabit       Torino, 02/05/2012
Punti di Forza                   Punti di Debolezza




Associazione Drupal Italia – Treatabit       Torino, 02/05/2012
Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Una comunità in crescita

     1751 partecipanti a Londra 2011
      1200 partecipanti a Copenaghen 2010
                   850 partecipanti a Parigi 2009
                    504 partecipanti a Szeged 2008
                   430 partecipanti a Barcellona 2007
                        150 partecipanti a Bruxelles 2006
                        100 partecipanti ad Amsterdam 2005




Associazione Drupal Italia – Treatabit                       Torino, 02/05/2012
Potente e modulare


                  15807 Moduli
                  1368 Temi
                  408 Distribuzioni
                  17533 Sviluppatori




Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Utilizza tecnologie e
                 pratiche comprovate



Test automatici e QA
API estensive
Interfaccia sviluppabile con
strumenti quali HTML5 e LESS




Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Punti di Forza                   Punti di Debolezza




Associazione Drupal Italia – Treatabit       Torino, 02/05/2012
Non sono sempre tutte rose…

                    Le difficoltà non sono causate da un'interfaccia difficile da comprendere, ma dalle potenz
                    Quello che si guadagna in flessibilità si perde nella facilità di apprendimento.
                    Ci sono tante opzioni e configurazione con cui è necessario familiarizzare.
                    Si impiega più tempo ad acquisire skills da webmaster con Drupal che con Joomla o Word




Associazione Drupal Italia – Treatabit                                                Torino, 02/05/2012
Da Drupal nasce...




Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Open Atrium
  Open Atrium è un ambiente collaborativo organizzato attorno al concetto
  di “gruppi di lavoro” che permette a differenti team e utenti di lavorare insieme.




    Permette di creare e modificare i contenuti
    Si basa su Drupal
    Implementa le funzioni tipiche del paradigma
    del web 2.0
    openatrium.com




Associazione Drupal Italia – Treatabit                                      Torino, 02/05/2012
Open Atrium: le funzionalità di base

                                         Dashboard

                                          Shoutbox

                                            Blog

                                            Wiki

                                          Calendar

                                         Casetracker
Associazione Drupal Italia – Treatabit             Torino, 02/05/2012
Drupal Commons
Drupal Commons è una soluzione pronta all'uso per costruire comunità per
 intranet o extranet. E' una social business software solution per le aziende.


           E' basato su Drupal;

           Licenza Creative Commons;

           A differenza di open atrium è un tool
           specificatamente per le aziende;

           http://drupal.org/project/commons




 Associazione Drupal Italia – Treatabit                      Torino, 02/05/2012
Drupal Commons: le funzionalità di base


                                          Gruppi
                                          Blog
                                          Documenti
                                          Discussioni
                                          Wiki
                                          Appunti
                                          Eventi
                                          Amici




Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Associazione Drupal Italia – Treatabit   Torino, 02/05/2012
Drupal «out-of-the-box»
 Core
 Il Core è una collezione di moduli, inclusi nella
     distribuzione ufficiale di Drupal.

 Eseguendo un'installazione standard, non tutti i
   moduli vengono attivati.
                                                         Funzioni principali del Core
 Deve essere sempre ricordata la caratteristica          Strumenti di base per la gestione di contenuti
   modulare di Drupal, in quanto molte funzionalità      Controllo accessi basato su ruoli e permessi (sono i
   sono il risultato di collezioni o combinazioni di        singoli moduli a creare e implementare i
   moduli. Spesso i moduli estendono una                    permessi)
   funzionalità esistente più che fornire funzionalità   Alcune tabelle ("content type") pronte per specifici
   nuove.                                                   tipi di contenuto (pagine generiche/istituzionali,
                                                            news, blog)
                                                         Capacità di estendere i tipi di contenuto disponibili
                                                            con i campi ("fields") e di creare nuovi tipi di
                                                            contenuto secondo le esigenze
                                                         Integrazione con librerie di manipolazione delle
                                                            immagini per creare preset
                                                         Sistema di caching elementare



Associazione Drupal Italia – Treatabit                                                   Torino, 02/05/2012
Core: Content management
                                                                                   Strumenti base per la
Image: mebaze (http://www.iconfinder.com/icondetails/46798/128/edit_notes_icon)




                                                                                    gestione dei contenuti
                                                                                   Drupal fornisce il set di strumenti necessari
                                                                                     per la gestione (creazione, visualizzazione,
                                                                                     aggiornamento, eliminazione) dei contenuti
                                                                                     di un sito web.                                Modalità di gestione dei
                                                                                                                                     contenuti
                                                                                                                                    Gli utenti con i permessi giusti possono creare
                                                                                                                                       i contenuti
                                                                                                                                    La modifica può avvenire a partire dal
                                                                                                                                       contenuto stesso (pagina) oppure da
                                                                                                                                       un'interfaccia amministrativa in cui l'elenco
                                                                                                                                       di post (“nodi”) è filtrabile
                                                                                                                                    Workflow elementare: i nodi possono essere
                                                                                                                                       pubblicati o no al momento della creazione
                                                                                                                                       e il sistema dei permessi può dare poteri di
                                                                                                                                       approvazione a utenti particolari

                                                                                  Associazione Drupal Italia – Treatabit                                         Torino, 02/05/2012
Core: Controllo accessi
   (http://www.iconfinder.com/icondetails/7261/128/lock_login_manager_private_register_security_i




                                                                                     Ruoli e permessi
                                                                                     Le funzionalità CMS sono strettamente
                                                                                       legate al meccanismo di controllo di
                                                                                       accessi.
                                                                                                                                    I ruoli possono essere creati
                                                                                     Il sistema prevede controlli sia sulla            arbitrariamente dagli amministratori;
                                                                                         gestione dei contenuti, sia sull'accesso      ogni utente può essere assegnato a
                                                                                         alle funzioni di amministrazione della        più ruoli
                                                                                         piattaforma.                               I permessi sono implementati dai moduli,
                                                                                                                                       quindi quando si attivano nuovi moduli
                                                                                                                                       è opportuno verificare quali permessi
                                                                                                                                       ne regolano il funzionamento
Image: Sergio Sanchez Lopez




                                                                                                                                    L'utente che installa e configura per la
                                                                                                                                       prima volta un sito Drupal è un
                                                                                                                                       “superutente”
                                                                                                                                    I permessi sui contenuti possono essere
                                                                                                                                       disgiunti per creazione, modifica,
   con)




                                                                                                                                       eliminazione

                                                       Associazione Drupal Italia – Treatabit                                                                Torino, 02/05/2012
Core: Content type
   (http://www.iconfinder.com/icondetails/8747/128/database_preferences_setup_icon)




                                                                                      La struttura dei contenuti
                                                                                      I content type sono un elemento
                                                                                         fondamentale del sistema CMS, che
                                                                                         permette di definire tipi diversi di post
                                                                                         con
                                                                                      Differenti permessi di accesso in scrittura
                                                                                      Differenti impostazioni di pubblicazione
                                                                                      Differenti strutture delle informazioni
                                                                                         contenute                                   Differenti permessi di accesso in scrittura
                                                                                                                                     Differenti impostazioni di pubblicazione
                                                                                                                                     Differenti strutture delle informazioni
                                                                                                                                       contenute
                                                                                                                                     Drupal fornisce alcuni content type
                                                                                                                                       predefiniti: pagina generica, articolo,
Image: Oxygen Team




                                                                                                                                       blog post, forum post
                                                                                                                                     Gli amministratori possono creare altri
                                                                                                                                       content type e personalizzarli con i
                                                                                                                                       campi

                                                                       Associazione Drupal Italia – Treatabit                                                  Torino, 02/05/2012
Core: Fields
 Diversi tipi di dati
 Ogni tipo di post è un contenitore per dati
  eterogenei: testo, date, immagini…
                                               Campi e widget
 Questo influenza il modo in cui i dati sono
  memorizzati nel database e il modo in        Ogni content type, compresi quelli
  cui l'utente li inserisce nel sistema.          predefiniti, può essere personalizzato
                                                  rispetto alla sua struttura delle
                                                  informazioni
                                               I campi sono definiti dalla loro tipologia,
                                                  dal widget utilizzato per l'input e dalla
                                                  visualizzazione all'interno dei post
                                               Campi multi-istanza, se necessario
                                               Oltre ai campi/widget/display forniti da
                                                  Drupal, moduli aggiuntivi possono
                                                  fornirne di ulteriori
                                               Drupal 7 → “Entity” → campi disponibili
                                                  anche per commenti, utenti, ecc.

Associazione Drupal Italia – Treatabit                                    Torino, 02/05/2012
Core: Manipolazione immagini
                                                                                 Integrazione con le librerie
   (http://www.iconfinder.com/icondetails/28841/256/emblem_images_photos_icon)




                                                                                   esistenti
                                                                                 Nell'inserimento dei contenuti è
                                                                                   importante poter trattare in modo            Stili delle immagini
                                                                                   efficiente anche le immagini.
                                                                                                                                Lo “stile” usato per visualizzare le
                                                                                 La libreria GD (e altre, per le quali però è      immagini corrisponde a un preset
                                                                                   necessario installare moduli aggiuntivi)        impostato dagli amministratori
                                                                                   permette di generare dinamicamente           Drupal fornisce alcuni preset/stili
                                                                                   immagini ridimensionate o ritagliate.           predefiniti e l'utente può definirne altri a
                                                                                                                                   priacere
                                                                                                                                L'utilizzo degli stili permette di utilizzare
                                                                                                                                   una sola immagine sorgente per
Image: New Moon




                                                                                                                                   visualizzazioni diverse (per esempio:
                                                                                                                                   miniature in una tabella/elenco,
                                                                                                                                   ingombro predefinito in un box/blocco
                                                                                                                                   laterale)

                                                                   Associazione Drupal Italia – Treatabit                                                   Torino, 02/05/2012
Core: Caching
Image: Icons Island (http://www.iconfinder.com/icondetails/34216/256/clock_history_time_icon)




                                                                                                 Ottimizzare le prestazioni
                                                                                                 Un CMS è un'applicazione spesso avida
                                                                                                   di risorse, soprattutto per i continui
                                                                                                   accessi al database.

                                                                                                 Un sistema di caching aiuta a ridurre il
                                                                                                   carico del sito sul server e a servire i
                                                                                                   contenuti più rapidamente.
                                                                                                                                              Cache dei contenuti basata sul database;
                                                                                                                                                 non si tratta di cache opcode
                                                                                                                                              Riduce drasticamente il numero di query
                                                                                                                                                 eseguite per servire una pagina
                                                                                                                                              L'amministratore può impostare
                                                                                                                                                 manualmente una durata minima della
                                                                                                                                                 cache, per siti particolarmente trafficati
                                                                                                                                              I moduli aggiuntivi possono definire
                                                                                                                                                 anche tabelle di cache dedicate a
                                                                                                                                                 contenuti specifici

                                                                                                Associazione Drupal Italia – Treatabit                                   Torino, 02/05/2012
Drupal Contrib
Image: IconEden (http://www.iconfinder.com/icondetails/61510/256/module_piece_icon)




                                                                                       Moduli aggiuntivi
                                                                                       Le funzionalità offerte dal Core sono
                                                                                         integrate da tantissimi moduli aggiuntivi
                                                                                                                                     I fondamentali
                                                                                         (spesso citati come “contrib”).
                                                                                                                                     Views: generatore di query
                                                                                       Alcuni di questi sono fondamentali nella      Rules: permette di impostare l'esecuzioni
                                                                                         realizzazione di un sito e devono             di azioni associate a eventi di sistema
                                                                                         entrare nel set di conoscenze richieste       o a interazioni con l'utente
                                                                                         a un esperto di Drupal.                     Pathauto: generatore automatico di
                                                                                                                                       percorsi per i nuovi contenuti (SEO)
                                                                                                                                     Devel: accesso rapido a funzioni e
                                                                                                                                       informazioni utili in fase di sviluppo
                                                                                                                                     Admin: barra di navigazione
                                                                                                                                       personalizzata per i gestori del sito
                                                                                                                                     Features: permette di trasferire
                                                                                                                                       configurazione e struttura del sito in
                                                                                                                                       oggetti (file, funzioni) esportabili e
                                                                                                                                       portabili da un sito all'altro

                                                                                      Associazione Drupal Italia – Treatabit                                  Torino, 02/05/2012
Drupal Contrib: Views
Image: New Moon (http://www.iconfinder.com/icondetails/28899/256/document_file_sql_icon)




                                                                                            Generatore di query
                                                                                            Permette di creare visualizzazioni
                                                                                              personalizzate dei contenuti o di altre
                                                                                              entità memorizzate in Drupal.

                                                                                            Crea degli elenchi (viste) di elementi che
                                                                                              possono essere messi a disposizione
                                                                                              degli utenti (consultazione) o degli       I contenuti possono essere visualizzati in
                                                                                              amministratori (per migliorare e              diversi formati: elenco, griglia, tabella
                                                                                              integrare la gestione dei contenuti).      Possono apparire anche immagini con
                                                                                                                                            relativi stili/preset
                                                                                                                                         Supporto per la gestione di campi multi-
                                                                                                                                            istanza senza duplicare i record
                                                                                                                                         Possibilità di associare link/azioni a ogni
                                                                                                                                            elemento (modifica, elimina, pubblica,
                                                                                                                                            ecc.)
                                                                                                                                         Fornisce anche feed RSS o esportazione
                                                                                                                                            tipo CSV

                                                                                           Associazione Drupal Italia – Treatabit                                   Torino, 02/05/2012
Drupal Contrib: Rules
 Azione e reazione
 Rules è un modulo molto utile, che
   permette di gestire il comportamento
   della piattaforma in risposta a
   determinati eventi.

 Adatto a gestire meccanismi di notifica,
   gestione di utenti e ruoli, ecc.
                                            Possibili utilizzi
                                            Notifica agli amministratori quando viene
                                              creato o modificato o commentato un
                                              contenuto
                                            Attivazione o disattivazione di un utente
                                              al raggiungimento di una soglia
                                            Esecuzione di codice PHP arbitrario in
                                              occasione di un evento
                                            Destinazione di un utente dopo il login

Associazione Drupal Italia – Treatabit                               Torino, 02/05/2012
Drupal Contrib: Devel
Image: VistaICO.com (http://www.iconfinder.com/icondetails/49236/256/config_tools_icon)




                                                                                           Diagnostica e supporto allo
                                                                                            sviluppo
                                                                                                                                        Funzioni principali
                                                                                           Non solo gli sviluppatori hanno bisogno di
                                                                                             controllare lo stato di esecuzione delle   Log e visualizzazione delle query sul
                                                                                             funzioni della piattaforma; anche gli        database, con relativi tempi di
                                                                                             amministratori del sistema hanno             esecuzione
                                                                                             talvolta bisogno di controllare, per       Creazione automatica di utenti e
                                                                                             esempio, il tempo di esecuzione delle        contenuti, per testare rapidamente il
                                                                                             query.                                       sito
                                                                                                                                        Visualizzazione di informazioni sul tema
                                                                                                                                          in uso
                                                                                                                                        Visualizzazione di “backtrace”
                                                                                                                                        Tramite i permessi, si possono mostrare
                                                                                                                                          le informazioni di debug solo a ruoli
                                                                                                                                          definiti, mentre per gli utenti normali il
                                                                                                                                          sito continua a funzionare
                                                                                                                                          regolarmente

                                                                                          Associazione Drupal Italia – Treatabit                                   Torino, 02/05/2012
Drupal Contrib: Altri moduli
                                                                                L'universo dei moduli contrib è vastissimo
                                                                                   e si impara a conoscere solo
Image: Drago (http://www.iconfinder.com/icondetails/37337/256/settings_icon)




                                                                                   misurandolo con le esigenze che si
                                                                                   presentano man mano.

                                                                                I moduli presentati sono fondamentali per
                                                                                   l'uso quotidiano, ma se ne trovano altri   Ubercart / Drupal Commerce: due suite
                                                                                   con funzionalità interessanti e con un       di moduli per creare piattaforme di e-
                                                                                   uso piuttosto diffuso.                       commerce
                                                                                                                              Workflow: permette di generare flussi di
                                                                                                                                gestione redazionale complessi
                                                                                                                              OpenLayers: porta su Drupal l'omonima
                                                                                                                                libreria JS per la visualizzazione di
                                                                                                                                mappe con marker, integrate con i
                                                                                                                                contenuti di Drupal grazie a Views
                                                                                                                              Jquery Update: permette di utilizzare
                                                                                                                                versioni più aggiornate della nota
                                                                                                                                libreria JS, che è alla base delle
                                                                                                                                funzioni AJAX di Drupal

                                                                               Associazione Drupal Italia – Treatabit                                 Torino, 02/05/2012
Come si integra Drupal?
 Modularità
 Drupal è un sistema estremamente
   modulare e si presta quindi ad essere
   integrato con l'aggiunta di moduli
   aggiuntivi.                                Contrib e Custom

 I moduli non sono applicazioni, ma           Le migliaia di moduli contrib disponibili
    spesso inseriscono piccole funzionalità     gratuitamente nell'archivio di
    o aggiunte a quanto già esiste, per         Drupal.org (alcuni moduli non gratuiti
    esempio: tipi di dati in input, widget,     sono disponibili altrove) sono la fonte
    blocchi per la visualizzazione di           principale di nuove funzionalità
    informazioni, ecc.                        Per venire incontro alle esigenze
                                                specifiche di un cliente, è possibile
                                                sviluppare moduli ad-hoc e svolgere
                                                attività di “theming”, cioè creare un
                                                layout e creare una logica di
                                                presentazione con le variabili da
                                                passare ai template

Associazione Drupal Italia – Treatabit                                  Torino, 02/05/2012
Sviluppare per Drupal
 PHP: funzioni e hook
 Drupal è scritto in PHP, un linguaggio
   molto popolare. Per sviluppare
   funzionalità aggiuntive, non basta però
   conoscere PHP, ma occorre conoscere        Scrivere un modulo per Drupal significa
   la API di Drupal, un set di funzioni che     per la maggior parte implementare
   espongono ai programmatori le attività       degli “hook”, funzioni particolari che
   e gli eventi del sistema.                    intercettano uno stato di esecuzione di
                                                Drupal e permettono al programmatore
                                                di inserire funzionalità aggiuntive in
                                                quel particolare stato. Esempi:
                                              hook_schema: definisce una o più tabelle
                                                del database
                                              hook_user_insert: è stato appena creato
                                                un utente
                                              hook_form_alter: un form definito altrove
                                                può essere modificato aggiungendo o
                                                modificandone gli elementi

Associazione Drupal Italia – Treatabit                                 Torino, 02/05/2012
Aspetto grafico
 “Theming”
 L'aspetto di un sito fatto in Drupal è
    completamente personalizzabile,
    scaricando o creando un “tema”.

 Un Tema è un pacchetto di file di
   template php,fogli di stile css e
   javascript che determina lo stile grafico
   e il look and feel di un sito fatto in
   drupal.

                                               Temi pronti all'uso si trovano su
                                                 Drupal.org (e su alcuni siti di produttori
                                                 di temi).

                                               Sono disponibili sia temi gratis che a
                                                 pagamento.

Associazione Drupal Italia – Treatabit                                    Torino, 02/05/2012
Temi pronti e temi di base
 A seconda del tipo di progetto e di budget, si
    può scegliere se usare un tema pronto,
    oppure svilupparlo ad hoc.

 Pochissimi scelgono di partire da zero per
    creare un tema di Drupal: è molto più
    comune partire da “temi base”, pensati per
    fornire una buona base
 flessibile per realizzare un design
                                                  Esistono temi di base che integrano
    personalizzato.
                                                    framework CSS come 960gs, oppure
                                                    sistemi come Less e Sass, responsive
 Esempi di temi base includono:
                                                    Design.
 http://drupal.org/project/zen
                                                  Tutte le tecniche di CSS possono essere
 http://drupal.org/project/omega                    applicate ai temi di Drupal.

 http://drupal.org/project/ninesixty              Addentrandosi nello sviluppo di Drupal, si
                                                    scopre che tutto l'output generato può
                                                    essere modificato e gestito, basta sapere
                                                    dove mettere le mani :)

Associazione Drupal Italia – Treatabit                                       Torino, 02/05/2012
Alessandra Petromilli
                             petromilli@csp.it
                            Twitter: @Aleanan




                         Marcello Testi
                          m.testi@gmail.com
                           Twitter: @pinolo



                                                    GRAZIE A

                       Mario Vercellotti
                      mario.vercellotti@gmail.com
                         Twitter: @vermario



Associazione Drupal Italia – Treatabit                  Torino, 02/05/2012

Contenu connexe

Similaire à Presentazione Drupal 2012 - Associazione Drupal Italia

Drupal
DrupalDrupal
DrupalNaLUG
 
Drupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAIDrupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAIDrupalDay
 
Creare distribuzioni con drupal
Creare distribuzioni con drupalCreare distribuzioni con drupal
Creare distribuzioni con drupalAlessandro Capra
 
Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione
 Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione
Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzioneanafesto
 
Sviluppare applicazioni Facebook utilizzando Drupal
Sviluppare applicazioni Facebook utilizzando DrupalSviluppare applicazioni Facebook utilizzando Drupal
Sviluppare applicazioni Facebook utilizzando DrupalTwinbit
 
Introduzione a Drupal - Versione Italiana
Introduzione a Drupal - Versione ItalianaIntroduzione a Drupal - Versione Italiana
Introduzione a Drupal - Versione ItalianaGiovanni Buffa
 
Plone in Regione Emilia-Romagna
Plone in Regione Emilia-RomagnaPlone in Regione Emilia-Romagna
Plone in Regione Emilia-RomagnaGiovanni Grazia
 
Cms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiCms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiGiulia S
 
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...DrupalDay
 
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...bmeme
 
Drupal in the Cloud
Drupal in the CloudDrupal in the Cloud
Drupal in the CloudTwinbit
 
La rivoluzione del web 2.0
La rivoluzione del web 2.0La rivoluzione del web 2.0
La rivoluzione del web 2.0Luca Mascaro
 
[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming
[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming
[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al themingWellnet srl
 
[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming
[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming
[drupalday2017] - Drupal & Patternlab: un nuovo approccio al themingDrupalDay
 
Strumenti web2.0
Strumenti web2.0Strumenti web2.0
Strumenti web2.0sidelab1
 
Drupal Day 2011 - Drupal: stand alone VS integrazione con altri software
Drupal Day 2011 - Drupal: stand alone VS integrazione con altri softwareDrupal Day 2011 - Drupal: stand alone VS integrazione con altri software
Drupal Day 2011 - Drupal: stand alone VS integrazione con altri softwareDrupalDay
 

Similaire à Presentazione Drupal 2012 - Associazione Drupal Italia (20)

Drupal 7
Drupal 7Drupal 7
Drupal 7
 
Drupal
DrupalDrupal
Drupal
 
Drupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAIDrupal Day 2011 - Drupal per la ricerca, il caso EAI
Drupal Day 2011 - Drupal per la ricerca, il caso EAI
 
Creare distribuzioni con drupal
Creare distribuzioni con drupalCreare distribuzioni con drupal
Creare distribuzioni con drupal
 
Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione
 Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione
Content Curation - Sviluppare il gusto dell'ideazione e dell'invenzione
 
Sviluppare applicazioni Facebook utilizzando Drupal
Sviluppare applicazioni Facebook utilizzando DrupalSviluppare applicazioni Facebook utilizzando Drupal
Sviluppare applicazioni Facebook utilizzando Drupal
 
Introduzione a Drupal - Versione Italiana
Introduzione a Drupal - Versione ItalianaIntroduzione a Drupal - Versione Italiana
Introduzione a Drupal - Versione Italiana
 
Conoscenza e PA
Conoscenza e PAConoscenza e PA
Conoscenza e PA
 
Plone in Regione Emilia-Romagna
Plone in Regione Emilia-RomagnaPlone in Regione Emilia-Romagna
Plone in Regione Emilia-Romagna
 
Cms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenutiCms, Content Management System. Sistema di gestione dei contenuti
Cms, Content Management System. Sistema di gestione dei contenuti
 
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
 
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
La piattaforma web di CNA: Istanze Drupal replicabili integrate con Alfresco ...
 
Drupal in the Cloud
Drupal in the CloudDrupal in the Cloud
Drupal in the Cloud
 
La rivoluzione del web 2.0
La rivoluzione del web 2.0La rivoluzione del web 2.0
La rivoluzione del web 2.0
 
[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming
[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming
[Gian Mario Mereu] - Drupal & Patternlab: un nuovo approccio al theming
 
[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming
[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming
[drupalday2017] - Drupal & Patternlab: un nuovo approccio al theming
 
Lim bene 2
Lim bene 2Lim bene 2
Lim bene 2
 
Caratteristiche web 2.0
Caratteristiche web 2.0Caratteristiche web 2.0
Caratteristiche web 2.0
 
Strumenti web2.0
Strumenti web2.0Strumenti web2.0
Strumenti web2.0
 
Drupal Day 2011 - Drupal: stand alone VS integrazione con altri software
Drupal Day 2011 - Drupal: stand alone VS integrazione con altri softwareDrupal Day 2011 - Drupal: stand alone VS integrazione con altri software
Drupal Day 2011 - Drupal: stand alone VS integrazione con altri software
 

Presentazione Drupal 2012 - Associazione Drupal Italia

  • 1.
  • 2. Chi siamo L'Associazione Drupal Italia: un'organizzazione dedicata alla diffusione e alla conoscenza del CMS open source Drupal all'interno del territorio nazionale, collaborando con enti nazionali e internazionali del settore ICT. http://drupalitalia.org
  • 3. La nascita Drupal nasce nel 2000, tra i banchi dell'università di Anversa. All'inizio si trattava di un piccolo sito interattivo creato da Dries Buytaert per permettere agli studenti di inviare note e notizie utili a tutti. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 4. Che cos'è? Drupal è un content management system: uno strumento software studiato per facilitare la gestione dei contenuti di siti web Ha un'architettura lego style, è scritto in PHP ed è distribuito sotto GNU GPL licence. Offre un' interfaccia di amministrazione attraverso la quale è possibile gestire ogni singola parte del sito web, senza possedere skill di programmazione. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 5. Cosa si può fare con Drupal? Weblog Community Web Site Forums Social Network Site Wiki/Knowledge Base Business Web Application Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 6. Punti di Forza Punti di Debolezza Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 7. Punti di Forza Punti di Debolezza Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 8. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 9. Una comunità in crescita 1751 partecipanti a Londra 2011 1200 partecipanti a Copenaghen 2010 850 partecipanti a Parigi 2009 504 partecipanti a Szeged 2008 430 partecipanti a Barcellona 2007 150 partecipanti a Bruxelles 2006 100 partecipanti ad Amsterdam 2005 Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 10. Potente e modulare 15807 Moduli 1368 Temi 408 Distribuzioni 17533 Sviluppatori Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 11. Utilizza tecnologie e pratiche comprovate Test automatici e QA API estensive Interfaccia sviluppabile con strumenti quali HTML5 e LESS Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 12. Punti di Forza Punti di Debolezza Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 13. Non sono sempre tutte rose… Le difficoltà non sono causate da un'interfaccia difficile da comprendere, ma dalle potenz Quello che si guadagna in flessibilità si perde nella facilità di apprendimento. Ci sono tante opzioni e configurazione con cui è necessario familiarizzare. Si impiega più tempo ad acquisire skills da webmaster con Drupal che con Joomla o Word Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 14. Da Drupal nasce... Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 15. Open Atrium Open Atrium è un ambiente collaborativo organizzato attorno al concetto di “gruppi di lavoro” che permette a differenti team e utenti di lavorare insieme. Permette di creare e modificare i contenuti Si basa su Drupal Implementa le funzioni tipiche del paradigma del web 2.0 openatrium.com Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 16. Open Atrium: le funzionalità di base Dashboard Shoutbox Blog Wiki Calendar Casetracker Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 17. Drupal Commons Drupal Commons è una soluzione pronta all'uso per costruire comunità per intranet o extranet. E' una social business software solution per le aziende. E' basato su Drupal; Licenza Creative Commons; A differenza di open atrium è un tool specificatamente per le aziende; http://drupal.org/project/commons Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 18. Drupal Commons: le funzionalità di base Gruppi Blog Documenti Discussioni Wiki Appunti Eventi Amici Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 19. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 20. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 21. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 22. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 23. Drupal «out-of-the-box» Core Il Core è una collezione di moduli, inclusi nella distribuzione ufficiale di Drupal. Eseguendo un'installazione standard, non tutti i moduli vengono attivati. Funzioni principali del Core Deve essere sempre ricordata la caratteristica Strumenti di base per la gestione di contenuti modulare di Drupal, in quanto molte funzionalità Controllo accessi basato su ruoli e permessi (sono i sono il risultato di collezioni o combinazioni di singoli moduli a creare e implementare i moduli. Spesso i moduli estendono una permessi) funzionalità esistente più che fornire funzionalità Alcune tabelle ("content type") pronte per specifici nuove. tipi di contenuto (pagine generiche/istituzionali, news, blog) Capacità di estendere i tipi di contenuto disponibili con i campi ("fields") e di creare nuovi tipi di contenuto secondo le esigenze Integrazione con librerie di manipolazione delle immagini per creare preset Sistema di caching elementare Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 24. Core: Content management Strumenti base per la Image: mebaze (http://www.iconfinder.com/icondetails/46798/128/edit_notes_icon) gestione dei contenuti Drupal fornisce il set di strumenti necessari per la gestione (creazione, visualizzazione, aggiornamento, eliminazione) dei contenuti di un sito web. Modalità di gestione dei contenuti Gli utenti con i permessi giusti possono creare i contenuti La modifica può avvenire a partire dal contenuto stesso (pagina) oppure da un'interfaccia amministrativa in cui l'elenco di post (“nodi”) è filtrabile Workflow elementare: i nodi possono essere pubblicati o no al momento della creazione e il sistema dei permessi può dare poteri di approvazione a utenti particolari Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 25. Core: Controllo accessi (http://www.iconfinder.com/icondetails/7261/128/lock_login_manager_private_register_security_i Ruoli e permessi Le funzionalità CMS sono strettamente legate al meccanismo di controllo di accessi. I ruoli possono essere creati Il sistema prevede controlli sia sulla arbitrariamente dagli amministratori; gestione dei contenuti, sia sull'accesso ogni utente può essere assegnato a alle funzioni di amministrazione della più ruoli piattaforma. I permessi sono implementati dai moduli, quindi quando si attivano nuovi moduli è opportuno verificare quali permessi ne regolano il funzionamento Image: Sergio Sanchez Lopez L'utente che installa e configura per la prima volta un sito Drupal è un “superutente” I permessi sui contenuti possono essere disgiunti per creazione, modifica, con) eliminazione Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 26. Core: Content type (http://www.iconfinder.com/icondetails/8747/128/database_preferences_setup_icon) La struttura dei contenuti I content type sono un elemento fondamentale del sistema CMS, che permette di definire tipi diversi di post con Differenti permessi di accesso in scrittura Differenti impostazioni di pubblicazione Differenti strutture delle informazioni contenute Differenti permessi di accesso in scrittura Differenti impostazioni di pubblicazione Differenti strutture delle informazioni contenute Drupal fornisce alcuni content type predefiniti: pagina generica, articolo, Image: Oxygen Team blog post, forum post Gli amministratori possono creare altri content type e personalizzarli con i campi Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 27. Core: Fields Diversi tipi di dati Ogni tipo di post è un contenitore per dati eterogenei: testo, date, immagini… Campi e widget Questo influenza il modo in cui i dati sono memorizzati nel database e il modo in Ogni content type, compresi quelli cui l'utente li inserisce nel sistema. predefiniti, può essere personalizzato rispetto alla sua struttura delle informazioni I campi sono definiti dalla loro tipologia, dal widget utilizzato per l'input e dalla visualizzazione all'interno dei post Campi multi-istanza, se necessario Oltre ai campi/widget/display forniti da Drupal, moduli aggiuntivi possono fornirne di ulteriori Drupal 7 → “Entity” → campi disponibili anche per commenti, utenti, ecc. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 28. Core: Manipolazione immagini Integrazione con le librerie (http://www.iconfinder.com/icondetails/28841/256/emblem_images_photos_icon) esistenti Nell'inserimento dei contenuti è importante poter trattare in modo Stili delle immagini efficiente anche le immagini. Lo “stile” usato per visualizzare le La libreria GD (e altre, per le quali però è immagini corrisponde a un preset necessario installare moduli aggiuntivi) impostato dagli amministratori permette di generare dinamicamente Drupal fornisce alcuni preset/stili immagini ridimensionate o ritagliate. predefiniti e l'utente può definirne altri a priacere L'utilizzo degli stili permette di utilizzare una sola immagine sorgente per Image: New Moon visualizzazioni diverse (per esempio: miniature in una tabella/elenco, ingombro predefinito in un box/blocco laterale) Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 29. Core: Caching Image: Icons Island (http://www.iconfinder.com/icondetails/34216/256/clock_history_time_icon) Ottimizzare le prestazioni Un CMS è un'applicazione spesso avida di risorse, soprattutto per i continui accessi al database. Un sistema di caching aiuta a ridurre il carico del sito sul server e a servire i contenuti più rapidamente. Cache dei contenuti basata sul database; non si tratta di cache opcode Riduce drasticamente il numero di query eseguite per servire una pagina L'amministratore può impostare manualmente una durata minima della cache, per siti particolarmente trafficati I moduli aggiuntivi possono definire anche tabelle di cache dedicate a contenuti specifici Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 30. Drupal Contrib Image: IconEden (http://www.iconfinder.com/icondetails/61510/256/module_piece_icon) Moduli aggiuntivi Le funzionalità offerte dal Core sono integrate da tantissimi moduli aggiuntivi I fondamentali (spesso citati come “contrib”). Views: generatore di query Alcuni di questi sono fondamentali nella Rules: permette di impostare l'esecuzioni realizzazione di un sito e devono di azioni associate a eventi di sistema entrare nel set di conoscenze richieste o a interazioni con l'utente a un esperto di Drupal. Pathauto: generatore automatico di percorsi per i nuovi contenuti (SEO) Devel: accesso rapido a funzioni e informazioni utili in fase di sviluppo Admin: barra di navigazione personalizzata per i gestori del sito Features: permette di trasferire configurazione e struttura del sito in oggetti (file, funzioni) esportabili e portabili da un sito all'altro Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 31. Drupal Contrib: Views Image: New Moon (http://www.iconfinder.com/icondetails/28899/256/document_file_sql_icon) Generatore di query Permette di creare visualizzazioni personalizzate dei contenuti o di altre entità memorizzate in Drupal. Crea degli elenchi (viste) di elementi che possono essere messi a disposizione degli utenti (consultazione) o degli I contenuti possono essere visualizzati in amministratori (per migliorare e diversi formati: elenco, griglia, tabella integrare la gestione dei contenuti). Possono apparire anche immagini con relativi stili/preset Supporto per la gestione di campi multi- istanza senza duplicare i record Possibilità di associare link/azioni a ogni elemento (modifica, elimina, pubblica, ecc.) Fornisce anche feed RSS o esportazione tipo CSV Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 32. Drupal Contrib: Rules Azione e reazione Rules è un modulo molto utile, che permette di gestire il comportamento della piattaforma in risposta a determinati eventi. Adatto a gestire meccanismi di notifica, gestione di utenti e ruoli, ecc. Possibili utilizzi Notifica agli amministratori quando viene creato o modificato o commentato un contenuto Attivazione o disattivazione di un utente al raggiungimento di una soglia Esecuzione di codice PHP arbitrario in occasione di un evento Destinazione di un utente dopo il login Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 33. Drupal Contrib: Devel Image: VistaICO.com (http://www.iconfinder.com/icondetails/49236/256/config_tools_icon) Diagnostica e supporto allo sviluppo Funzioni principali Non solo gli sviluppatori hanno bisogno di controllare lo stato di esecuzione delle Log e visualizzazione delle query sul funzioni della piattaforma; anche gli database, con relativi tempi di amministratori del sistema hanno esecuzione talvolta bisogno di controllare, per Creazione automatica di utenti e esempio, il tempo di esecuzione delle contenuti, per testare rapidamente il query. sito Visualizzazione di informazioni sul tema in uso Visualizzazione di “backtrace” Tramite i permessi, si possono mostrare le informazioni di debug solo a ruoli definiti, mentre per gli utenti normali il sito continua a funzionare regolarmente Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 34. Drupal Contrib: Altri moduli L'universo dei moduli contrib è vastissimo e si impara a conoscere solo Image: Drago (http://www.iconfinder.com/icondetails/37337/256/settings_icon) misurandolo con le esigenze che si presentano man mano. I moduli presentati sono fondamentali per l'uso quotidiano, ma se ne trovano altri Ubercart / Drupal Commerce: due suite con funzionalità interessanti e con un di moduli per creare piattaforme di e- uso piuttosto diffuso. commerce Workflow: permette di generare flussi di gestione redazionale complessi OpenLayers: porta su Drupal l'omonima libreria JS per la visualizzazione di mappe con marker, integrate con i contenuti di Drupal grazie a Views Jquery Update: permette di utilizzare versioni più aggiornate della nota libreria JS, che è alla base delle funzioni AJAX di Drupal Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 35. Come si integra Drupal? Modularità Drupal è un sistema estremamente modulare e si presta quindi ad essere integrato con l'aggiunta di moduli aggiuntivi. Contrib e Custom I moduli non sono applicazioni, ma Le migliaia di moduli contrib disponibili spesso inseriscono piccole funzionalità gratuitamente nell'archivio di o aggiunte a quanto già esiste, per Drupal.org (alcuni moduli non gratuiti esempio: tipi di dati in input, widget, sono disponibili altrove) sono la fonte blocchi per la visualizzazione di principale di nuove funzionalità informazioni, ecc. Per venire incontro alle esigenze specifiche di un cliente, è possibile sviluppare moduli ad-hoc e svolgere attività di “theming”, cioè creare un layout e creare una logica di presentazione con le variabili da passare ai template Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 36. Sviluppare per Drupal PHP: funzioni e hook Drupal è scritto in PHP, un linguaggio molto popolare. Per sviluppare funzionalità aggiuntive, non basta però conoscere PHP, ma occorre conoscere Scrivere un modulo per Drupal significa la API di Drupal, un set di funzioni che per la maggior parte implementare espongono ai programmatori le attività degli “hook”, funzioni particolari che e gli eventi del sistema. intercettano uno stato di esecuzione di Drupal e permettono al programmatore di inserire funzionalità aggiuntive in quel particolare stato. Esempi: hook_schema: definisce una o più tabelle del database hook_user_insert: è stato appena creato un utente hook_form_alter: un form definito altrove può essere modificato aggiungendo o modificandone gli elementi Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 37. Aspetto grafico “Theming” L'aspetto di un sito fatto in Drupal è completamente personalizzabile, scaricando o creando un “tema”. Un Tema è un pacchetto di file di template php,fogli di stile css e javascript che determina lo stile grafico e il look and feel di un sito fatto in drupal. Temi pronti all'uso si trovano su Drupal.org (e su alcuni siti di produttori di temi). Sono disponibili sia temi gratis che a pagamento. Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 38. Temi pronti e temi di base A seconda del tipo di progetto e di budget, si può scegliere se usare un tema pronto, oppure svilupparlo ad hoc. Pochissimi scelgono di partire da zero per creare un tema di Drupal: è molto più comune partire da “temi base”, pensati per fornire una buona base flessibile per realizzare un design Esistono temi di base che integrano personalizzato. framework CSS come 960gs, oppure sistemi come Less e Sass, responsive Esempi di temi base includono: Design. http://drupal.org/project/zen Tutte le tecniche di CSS possono essere http://drupal.org/project/omega applicate ai temi di Drupal. http://drupal.org/project/ninesixty Addentrandosi nello sviluppo di Drupal, si scopre che tutto l'output generato può essere modificato e gestito, basta sapere dove mettere le mani :) Associazione Drupal Italia – Treatabit Torino, 02/05/2012
  • 39. Alessandra Petromilli petromilli@csp.it Twitter: @Aleanan Marcello Testi m.testi@gmail.com Twitter: @pinolo GRAZIE A Mario Vercellotti mario.vercellotti@gmail.com Twitter: @vermario Associazione Drupal Italia – Treatabit Torino, 02/05/2012