Download - Introduzione a Drupal 7 - 14/03/2013
![Page 1: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/1.jpg)
1
Introduzione a
Drupal 7
Club degli sviluppatori14 marzo 2013
a cura di Alessandro Del Gobbo
![Page 2: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/2.jpg)
2
1Cos’è e come funziona
2Usare
Drupal7
3Concetti
avanzati
Percorso in 3 parti
![Page 3: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/3.jpg)
3
Mi presento
• Sviluppatore dall’epoca di ASP 3.0 • Oggi principalmente su:– .NET e ASP.NET + SQL Server– Java (per Android)–Tecnologie web (HTML5, CSS, JS ecc)–PHP – altre conoscenze sparse qua e la
• Skills in grafica / UX
Alessandro Del Gobbo
![Page 4: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/4.jpg)
4
Requisiti minimi per Drupal: **MPCioè WAMP, LAMP ecc.
Gli essenziali sono: • Php 5.3+
• MySql 5.0.15+ (SqlServer e Oracle sono supportati da moduli aggiuntivi)
Prima di iniziare: cosa c’è da sapere?
![Page 5: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/5.jpg)
5
Conoscenze minime per essere «creativi»: • Html, CSS, JS• Funzionamento di un sito dinamico **MP• PHP e MySql per evolvere.
Requisiti per utilizzare un sito Drupal:• Essere vivi, (ma dipende dai «creativi»)
Prima di iniziare: cosa c’è da sapere?
![Page 9: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/9.jpg)
9
Cos’è e come funziona Drupal 7
1
![Page 10: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/10.jpg)
10
• Content Management System (CMS)
• Content Management Framework (CMF)
• Community Management System–Gestione eccezionale di utenti e permessi–Gestione eccezionale di User Generated
Content in relazione ai permessi
Cos’è:
![Page 11: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/11.jpg)
11
• Gratuito & Open Source (GPL)http://drupal.org/licensing/faq
• Modulare• Estensibile
• Ultra-flessibile (grazie alle DB-API)
• Manutenibile (updates e no-lock data)!
Caratteristiche salienti 1/2
![Page 12: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/12.jpg)
12
• Interfaccia SEMPLICE (Backend separABILE)• INTERNAZIONALIZABILE
• Supportato da community enorme 24k+ sviluppatori & 917k+ accounts.
• 20k+ moduli GRATUITI
• Sito di supporto eccellente• Usato da molte major companies• Scalabile (info nella terza parte)
Caratteristiche salienti (2/2)
![Page 13: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/13.jpg)
13
• Costruzione di contenuti personalizzati• Costruzioni di viste (Query)
con relativo layout anche senza scrivere SQL– Output delle viste dinamico (supporta anche RSS!)
• Già tradotto in 100+ lingue (anche i moduli)• Traducibilità dei contenuti personalizzati• Generatore di Form e relative azioni
Funzionalità interessanti (1/2)
![Page 14: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/14.jpg)
14
• URL Seo-friendly• Gestione profili thumbnail (+ effetti)• Pubblicazione schedulata contenuti• System Logs• Segnalazione aggiornamenti core e moduli
• MULTI SITO!! Un solo code-base per infiniti siti!
Funzionalità interessanti (2/2)
![Page 15: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/15.jpg)
15
Creato e mantenuto per (secondo loro):• Web-admin / Developers
(ovviamente)
• Non technical-people– Managers– Startuppers– Ecc.
Per chi è
![Page 16: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/16.jpg)
16
• Creato da Dries Buytaert in Belgio nel 2000
• Voleva essere una piattaforma per piccole community
• Rilasciato Op.Source nel 2001
• A capo di Acquia (servizi per drupal)
Storia di Drupal
Dries Buytaerthttp://buytaert.net/http://www.linkedin.com/in/buytaert
![Page 17: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/17.jpg)
17
Voleva registrare il dominio dorp.org(«dorp» in tedesco = villaggio)Per un errore di battitura registrò DROP.org
Drop in inglese = Goccia… che in tedesco di pronuncia esattamente come Drupal
Curiosità: perché «Drupal»?
Infatti il logo è… una goccia
![Page 18: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/18.jpg)
18
Cosa puoi farci
• Blogs• Siti istituzionali• Web-zine• Presentazione prodotti• Wiki• Gestione KnowHow
interno
• Forum• Community• E-commerce• Ecc.
![Page 20: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/20.jpg)
20
http://www.ricettario-bimby.it/ (una mega community)
Alcuni esempi…
![Page 21: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/21.jpg)
21
http://www.mtv.co.uk/ (una mega community)
Alcuni esempi…
![Page 22: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/22.jpg)
22
Alcuni esempi… si… è proprio lei… La casa bianca.
http://www.whitehouse.gov/
![Page 23: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/23.jpg)
23
http://drupal.org/case-studies (molti altri)
Alcuni esempi…
![Page 24: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/24.jpg)
24
• Wordpress (performante) ha di recente integrato un sistema di costruzione contenuti, ma la gestione utenti/permessi non è eccellente.
• Joomla:– poco manutenibile (maledetti aggiornamenti) – meno usabile anche di Wordpress – moduli migliori a pagamento
• Altri CMS in altri linguaggi spesso richiedono profonda conoscenza della piattaforma/linguaggio… anche per cose semplici
Perchè usare Drupal?
![Page 25: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/25.jpg)
25
• Non c’è uno scheduling delle versioni• Ogni versione è abbondantemente testata
tramite Alfa Beta RC1 RC2…• I moduli seguono lo stesso iter
contemporaneamente (alcuni vengono fuori in ritardo, quindi meglio aspettare!)
• Spesso i moduli più famosi vengono integrati nel core di Drupal
Versioni e Versioning di Drupal
![Page 26: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/26.jpg)
26
• Ancora in RC• Stanno integrando Symfony per la gestione DB• Stanno integrando moduli come la i18n• Migliore usabilità• Interfaccia admin anche Mobile con Html5• Nuovo sistema Layout (simile a panels)• Migliorano un sacco di cose tra cui le
prestazioni
Versione 8
![Page 27: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/27.jpg)
27
Questo è il diagramma del DB di Drupal 7
Com’è fatto drupal?
![Page 28: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/28.jpg)
28
Drupal ragiona con le «entità» • Node :un contenuto generico• User : un account• Taxonomy: Categorie/Tags• Comment: Commenti (gerarchici)
In realtà basta sapere che…
![Page 29: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/29.jpg)
29
I nodi rappresentano la base di un contenuto generico… una classe astratta
Nodi e contenuti personalizzati
Un «TIPO DI CONTENUTO» come Page (che è incluso di default) è un Node con quasi nessun campo (Field) aggiuntivo.
Possiamo pensare Page come una classe derivata da Node.
![Page 30: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/30.jpg)
30
I tipi di campo che inseriamo, non sono per forza tipi SQL… possono anche essere altre entità…
Nodi e contenuti personalizzati
Text_with_summary, crea un sommario automatico dal testo,
Taxonomy_reference splitta automaticamente i tag separati da virgola
Ecc…
![Page 31: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/31.jpg)
31
Con questo tipo di struttura flessibile,È ovvio che aggiungendo campi ad un nostro «oggetto» :
NON stiamo aggiungendo Colonne ad una tabella… ma RIGHE (e in varie tabelle).
• La flessibilità si paga con prestazioni• Drupal va ragionato
Nodi nel database
![Page 32: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/32.jpg)
32
Racchiude in se i concetti di: Tags, categorie, sezioni ecc.
Un dizionario = un gruppo di identificatori.
Ogni dizionario può essere:• Prestabilito dall’admin (es. le categorie degli articoli)• Variabile, come i «tags» aggiunti dagli utenti
• Un campo Taxonomy di un oggetto personalizzato può avere tantissimi risvolti.
Taxonomy / Tassonomia
![Page 33: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/33.jpg)
33
• Account: profilo di un utente• Permesso: Possibilità per un utente di compiere un azione o
visualizzare dei dati• Ruolo: Schema di permessi assegnabili a più utenti
• Ruolo Admin: puo fare tutto. In automatico ha tutti i permessi.
• Ruoli Custom: stabilisci tu ogni permesso
• Ruolo Guest: Utente non autenticato, può solo vedere i contenuti.
Users e sistema dei permessi
![Page 34: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/34.jpg)
34
Architettura di Drupal
![Page 35: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/35.jpg)
35
Architettura di Drupal (2)
![Page 36: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/36.jpg)
36
Struttura directory di Drupal
Eventualmente modificare solo i file/cartelle in verde.
![Page 37: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/37.jpg)
37
Temi
• Definiscono e sovrascrivono i template di qualsiasi modulo «by-name-convention»
• Sono derivabili in altri temi• Esistono Temi «framework»
![Page 38: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/38.jpg)
38
Temi
• Il template del tema ha sempre priorità rispetto al template del modulo
• In caso di temi ereditati scandaglia tutto.• Per tutti i dettagli sul naming-convention dei
template: http://drupal.org/node/1089656
es:comment--node-article.tpl.phpverrebbe preso come template per i commenti ai contenuti di tipo article
![Page 39: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/39.jpg)
39
Temi: com’è fatto un template
Es. page.php nel template «bartik»
![Page 40: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/40.jpg)
40
Meccanismo tramite il quale Drupal diventa estensibile e flessibile.• Agganciabili sia nei Temi che nei ModuliEs. nel tema «bartik», file template.php
Hooks
![Page 41: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/41.jpg)
41
Question time.
Domande?
![Page 42: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/42.jpg)
42
Usare Drupal 7 2
![Page 43: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/43.jpg)
43
L’installazione si può evitare completamentese l’hosting ci da Cpanel / Fantastico Script
Assicurarsi di avere un hosting con queste caratteristiche:• Apache + Php• MySql
• Creare un Database in MySql e un utente che possa accederci. Es. db1 e userdb1@localhost
1. Preparare l’ambiente
![Page 44: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/44.jpg)
44
Copiare nella root folder del sito, i sorgenti contenuti nell’archivio Drupal.
In sites/default copiare il file default.settings.php e rinominarlo in settings.php
1. Preparare l’ambiente
![Page 45: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/45.jpg)
45
Navigare con il browser :http://localhost/install.php(dove localhost è eventualmente il vostro dominio)
2. Eseguire lo script di installazione
![Page 46: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/46.jpg)
46
Navigare con il browser :http://localhost/install.php(dove localhost è eventualmente il vostro dominio)
2. Eseguire lo script di installazione
![Page 47: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/47.jpg)
47
Seguire il wizard…
2. Eseguire lo script di installazione
![Page 48: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/48.jpg)
48
Seguire il wizard…
2. Eseguire lo script di installazione
![Page 49: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/49.jpg)
49
• Impostare il CronJob (link speciale in Status Report)
• Abilitare i Clean Urls in /admin/config/search/clean-urls(.htaccess già presente… e anche il web.config!)
3. Configurazioni finali
![Page 50: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/50.jpg)
50
• I blocchi dipendono dal tema!
Layout e blocchi
![Page 51: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/51.jpg)
51
• http://drupal.org/project/zenE’ abbastanza Nerd
Ne esistono molti altri, anche Adaptative, per Mobile ecc.
PS. Si può sviluppare per MOBILE:http://drupal.org/documentation/mobilecon i temi o con moduli specifici come DrupalGap (per chi conosce Phonegap)
Uno dei temi migliori… ZEN
![Page 52: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/52.jpg)
52
NON E’ UN TEMA
E’ più un Framework per temi.
• Sfrutta molto l’ereditarietà• Include molte funzionalità tra cui la
«Breadcrumb»
Uno dei temi migliori… ZEN
![Page 53: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/53.jpg)
53
• BACKUP AND MIGRATEhttp://drupal.org/project/backup_migrate
• Internationalizationhttp://drupal.org/project/i18n
• Language Iconshttp://drupal.org/project/languageicons
• Localization update (l10n_update)http://drupal.org/project/l10n_update
• Administration Menuhttp://drupal.org/project/admin_menu
I moduli da installare subito…
![Page 54: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/54.jpg)
54
• Pathautohttp://drupal.org/project/pathauto
• Tokenhttp://drupal.org/project/token
• Transliterationhttp://drupal.org/project/transliteration
• Variable (API)http://drupal.org/project/variable
• Chaos Toolshttp://drupal.org/project/ctools
• Viewshttp://drupal.org/project/views
• Administration Languagehttp://drupal.org/project/admin_language
I moduli da installare subito…
![Page 55: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/55.jpg)
55
• Andare in Moduli, link Installa Modulo
Installazione di un modulo
![Page 56: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/56.jpg)
56
• Il link del .tar.gz si trova nella pagina del modulo
Installazione di un modulo
LINK DA COPIARE/SCARICARE
[VERSIONE DI DRUPAL] – [VERSIONE MODULO]
![Page 57: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/57.jpg)
57
WYSIWYG http://drupal.org/project/wysiwyg
Dopo aver installato il modulo Scaricare l’editor preferito e piazzarlo in:/sites/all/libraries/[editorname]Es. /sites/all/libraries/ckeditor
Creare un profilo WYSIWIG che usa ckeditor e assegnato ad un «formato testo»
Moduli che fanno comodo…
![Page 58: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/58.jpg)
58
• Date fieldhttp://drupal.org/project/date
• Referenceshttp://drupal.org/project/references
• Tutti i * field per Chaos Tool (CTools) (opp. CCK Content Construction Kit di D6)
• Panelshttp://drupal.org/project/panels
• Advanced Helphttp://drupal.org/project/advanced_help
• Webform:http://drupal.org/project/webform
Moduli che fanno comodo…
![Page 59: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/59.jpg)
59
Ecommerce:• http://drupal.org/project/ecommerce• http://drupal.org/project/ubercart
• SEO/Accessibilità:• http://drupal.org/project/seotools• http://drupal.org/project/seo_checklist
DEVELOPERS:• http://drupal.org/project/devel
Altri moduli…
![Page 60: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/60.jpg)
60
Riferimento:http://drupal.org/documentation/multilingual
Impostazioni Lingua e Internazionalizzazione
![Page 61: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/61.jpg)
61
• Aggiunta di una pagina standard• Creazione di un nuovo tipo di contenuto• Wysiwyg su nuovo contenuto• Gestione dei blocchi• Permessi
Live demos of…
![Page 62: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/62.jpg)
62
Questions time.
Domande?
![Page 63: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/63.jpg)
63
Concetti Avanzati 3
![Page 64: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/64.jpg)
64
Cari Nerd vi presento DRUSH! DRupal Shellhttp://www.drush.org/
Advanced tools
SI! C’è anche per Windows
![Page 65: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/65.jpg)
65
Drush
![Page 66: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/66.jpg)
66
• Drupal As A Service
https://www.getpantheon.com/ (Freemium Cloud DAAS Hosting)
Gestione facile del LIFE-CYCLE di un sito Drupal
Grazie a Drush stanno nascendo i DAAS
DEV PRODUCTION
STAGE
![Page 67: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/67.jpg)
67
• Decrescono con l’aumentare dei moduli attivi• Il database si riempie molto facilmente!• Il DB ha un ruolo chiave
(perché le query possono essere pesanti )• I moduli aggiungono eseguono query aggiuntive.
• Molti errori locali di Drupal sono dovuti all’ambiente (Wamp/Lamp)
Es. Su un PC locale inserite sempre l’ip 127.0.0.1 come host DB per evitare lag.
Performance di Drupal
![Page 68: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/68.jpg)
68
• Sistema integrato di caching• Sistema integrato compressione CSS/JS
• Usare CDN per tutti i JS / CSS / immagini tema• Pensare ad Varnish (Reverse Proxy Caching)
• Usare Nginx e APC (Alternative Php Cache)!
Migliorare le performance
![Page 69: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/69.jpg)
69
• Drupal essere installato in cloud. • Si, anche su Azure!
Scalabilità
![Page 70: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/70.jpg)
70
Oltre ad usare Varnish e CDN…
Per scalare…
![Page 71: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/71.jpg)
71
214 million hits in 6 ore. Database load: 5%. Apache load: 1%.
Per scalare alla grande…
![Page 72: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/72.jpg)
72
Alcuni avvertimenti su Drupal:
• A volte gli aggiornamenti vi faranno impazzire (non più di Joomla)
• Per progetti complessi usarlo solo per MVP ( poi passare a custom, magari .NET :-D )
• Bugs nei moduli… aggiornare per steps e solo quando necessario (Security Fix).
• Attenzione agli update-chains (dipendenze)
Note finali
![Page 73: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/73.jpg)
73
GRAZIE PER L’ATTENZIONE!
Con un breve questionario aiuterete me,il gruppo e i futuri presentatori a migliorare!
www.facebook.com/alessandro.adg.ok
twitter.com/alexoverflow
www.linkedin.com/in/delgobbo
Lasciate il vostro indirizzo email!
Alessandro del GobboCell. 329 792 79 82
![Page 74: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/74.jpg)
74
Question time.
Domande?
![Page 75: Introduzione a Drupal 7 - 14/03/2013](https://reader033.vdocuments.pub/reader033/viewer/2022061216/54b353724a7959ee748b468c/html5/thumbnails/75.jpg)
75
Alcune immagini tratte da:
• An Introduction to Drupal Architecture - John VanDyk - DrupalCamp Des Moines, Iowa
• Drupal as webplatform – Calibrate seminar
Bibliografia