SlideShare a Scribd company logo
1 of 17
Download to read offline
Drupal
Theme Engine
Il template in Drupal definisce il livello di
presentazione lato utente (front-end).
Per far si che un template esista in Drupal è
necessario un unico file .info. Tale file definisce le
informazioni base del template stesso.
mytheme.info
screenshot.png
template.php
*.css
*.js
*.tpl.php
mytheme
Theme Engine
.info
il file .info deve essere dello stesso nome della
cartella del nostro template.
name = template name
description = descrizione del template
core = versione di drupal richiesta (6.x, 7.x,...)
regions = le regioni del nostro template
features = feauters attive su questo template
stylesheets = fogli di stili associati al template
scripts = javascript associati al template
name = mytheme
description = Tableless, recolorable...
core = 7.x
stylesheets[all][] = style.css
stylesheets[print][] = print.css
regions[left] = sidebar sinistra
regions[content] = content
regions[right] = sidebar destra
features[] = logo
features[] = name
Theme Engine
.tpl.php
I file .tpl.php vengono usati per strutturare
visivamente il sito.
Ogni file appartiene ad una determinata struttura.
Si occupa della struttura HTML dell’intero sito.
Viene utilizzato per definire esclusivamente il
DTD e i tag principale dell’html (html-head-body).
html.tpl.php
Si occupa della struttura generale che,
difficilmente, cambia all’interno del sito.
Crea il contenitore per il nostro contenuto.
page.tpl.php
Si occupa della struttura di ogni contenuto che
inseriamo.
node--article.tpl.php
node.tpl.php
node.tpl.php
Si occupa della struttura delle regioni.
region--header.tpl.php
region.tpl.php
region.tpl.php
Si occupa della struttura dei blocchi.
block--content.tpl.php
block.tpl.php
block.tpl.php
Si occupa della struttura di ogni singolo campo.
field--field-name-article.tpl.php
field--field-name.tpl.php
field.tpl.php
field.tpl.php
Per approfondimenti su template suggestion:
https://www.drupal.org/node/1089656
2015 Giovanni Buffa - CC by-nd 3.0

More Related Content

Similar to Introduzione al Theme Engin di Drupal 7

DotNetToscana - Sessione TypeScript
DotNetToscana - Sessione TypeScriptDotNetToscana - Sessione TypeScript
DotNetToscana - Sessione TypeScript
Sinergia Totale
 
eZ publish - Introduzione al sistema
eZ publish - Introduzione al sistemaeZ publish - Introduzione al sistema
eZ publish - Introduzione al sistema
Francesco Trucchia
 

Similar to Introduzione al Theme Engin di Drupal 7 (20)

DNM19 Sessione2 Orchard Temi e Layout (Ita)
DNM19 Sessione2 Orchard Temi e Layout (Ita)DNM19 Sessione2 Orchard Temi e Layout (Ita)
DNM19 Sessione2 Orchard Temi e Layout (Ita)
 
Giovambattista Fazioli, 10 more things
Giovambattista Fazioli, 10 more thingsGiovambattista Fazioli, 10 more things
Giovambattista Fazioli, 10 more things
 
DNM19 Sessione1 Orchard Primo Impatto (ita)
DNM19 Sessione1 Orchard Primo Impatto (ita)DNM19 Sessione1 Orchard Primo Impatto (ita)
DNM19 Sessione1 Orchard Primo Impatto (ita)
 
eZ publish - Extension
eZ publish - ExtensioneZ publish - Extension
eZ publish - Extension
 
Drupal come framework di sviluppo
Drupal come framework di sviluppoDrupal come framework di sviluppo
Drupal come framework di sviluppo
 
Django: utilizzo avanzato e nuove funzionalità
Django: utilizzo avanzato e nuove funzionalitàDjango: utilizzo avanzato e nuove funzionalità
Django: utilizzo avanzato e nuove funzionalità
 
Slide sessione Drupal Theming & CSS Framework – Drupal Camp Torino 2010
Slide sessione Drupal Theming & CSS Framework – Drupal Camp Torino 2010Slide sessione Drupal Theming & CSS Framework – Drupal Camp Torino 2010
Slide sessione Drupal Theming & CSS Framework – Drupal Camp Torino 2010
 
Laravel Framework PHP
Laravel Framework PHPLaravel Framework PHP
Laravel Framework PHP
 
"Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen...
"Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen..."Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen...
"Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen...
 
"Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen...
"Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen..."Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen...
"Twig e i belli dentro": panoramica sui nuovi standard di frontend-developmen...
 
CSS corso base (classi seconde, mod 1)
CSS corso base (classi seconde, mod 1)CSS corso base (classi seconde, mod 1)
CSS corso base (classi seconde, mod 1)
 
Presentazione django reminiscence
Presentazione django reminiscencePresentazione django reminiscence
Presentazione django reminiscence
 
Drupal Day 2015 - Drupal 8 dal download del core alla pubblicazione in prod...
Drupal Day 2015 -  Drupal 8  dal download del core alla pubblicazione in prod...Drupal Day 2015 -  Drupal 8  dal download del core alla pubblicazione in prod...
Drupal Day 2015 - Drupal 8 dal download del core alla pubblicazione in prod...
 
Come portare il profiler di symfony2 in drupal8
Come portare il profiler di symfony2 in drupal8Come portare il profiler di symfony2 in drupal8
Come portare il profiler di symfony2 in drupal8
 
DotNetToscana - Sessione TypeScript
DotNetToscana - Sessione TypeScriptDotNetToscana - Sessione TypeScript
DotNetToscana - Sessione TypeScript
 
Drupal 8: dal download del Core alla pubblicazione in produzione. Cos'è cambi...
Drupal 8: dal download del Core alla pubblicazione in produzione. Cos'è cambi...Drupal 8: dal download del Core alla pubblicazione in produzione. Cos'è cambi...
Drupal 8: dal download del Core alla pubblicazione in produzione. Cos'è cambi...
 
Drupal 8 - dal download del core alla pubblicazione in produzione
Drupal 8 - dal download del core alla pubblicazione in produzioneDrupal 8 - dal download del core alla pubblicazione in produzione
Drupal 8 - dal download del core alla pubblicazione in produzione
 
Odoo 8.0. Le nuove API.
Odoo 8.0. Le nuove API.Odoo 8.0. Le nuove API.
Odoo 8.0. Le nuove API.
 
eZ publish - Introduzione al sistema
eZ publish - Introduzione al sistemaeZ publish - Introduzione al sistema
eZ publish - Introduzione al sistema
 
Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...
Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...
Xamarin.Forms Performance Tips & Tricks - Francesco Bonacci - Codemotion Rome...
 

More from Giovanni Buffa

Introduzione a GIT - Laboratorio di Web Design 2014/15
Introduzione a GIT - Laboratorio di Web Design 2014/15Introduzione a GIT - Laboratorio di Web Design 2014/15
Introduzione a GIT - Laboratorio di Web Design 2014/15
Giovanni Buffa
 
The CSS Survival Manual - Giovanni Buffa (2014)
The CSS Survival Manual - Giovanni Buffa (2014)The CSS Survival Manual - Giovanni Buffa (2014)
The CSS Survival Manual - Giovanni Buffa (2014)
Giovanni Buffa
 
Introduzione a SASS - Laboratorio di Web Design 2014/15
Introduzione a SASS - Laboratorio di Web Design 2014/15Introduzione a SASS - Laboratorio di Web Design 2014/15
Introduzione a SASS - Laboratorio di Web Design 2014/15
Giovanni Buffa
 

More from Giovanni Buffa (20)

Introduzioni ai services in Angular 4 e ad RxJS
Introduzioni ai services in Angular 4 e ad RxJSIntroduzioni ai services in Angular 4 e ad RxJS
Introduzioni ai services in Angular 4 e ad RxJS
 
Introduzione ai componenti in Angular 4
Introduzione ai componenti in Angular 4Introduzione ai componenti in Angular 4
Introduzione ai componenti in Angular 4
 
Introduzione ad Angular CLI
Introduzione ad Angular CLIIntroduzione ad Angular CLI
Introduzione ad Angular CLI
 
Introduzione ad ECMAScript 6 (ES6) e TypeScript
Introduzione ad ECMAScript 6 (ES6) e TypeScriptIntroduzione ad ECMAScript 6 (ES6) e TypeScript
Introduzione ad ECMAScript 6 (ES6) e TypeScript
 
15 concetti importanti su javascript
15 concetti importanti su javascript15 concetti importanti su javascript
15 concetti importanti su javascript
 
Angular 4 - convertire o migrare un'applicazione Angularjs
Angular 4 -  convertire o migrare un'applicazione AngularjsAngular 4 -  convertire o migrare un'applicazione Angularjs
Angular 4 - convertire o migrare un'applicazione Angularjs
 
Angular js o React? Spunti e idee per la scelta di un framework
Angular js o React? Spunti e idee per la scelta di un frameworkAngular js o React? Spunti e idee per la scelta di un framework
Angular js o React? Spunti e idee per la scelta di un framework
 
Introduzione a Drupal - Versione Italiana
Introduzione a Drupal - Versione ItalianaIntroduzione a Drupal - Versione Italiana
Introduzione a Drupal - Versione Italiana
 
Laboratorio di Web Design 2015/16 - Introduzione al corso
Laboratorio di Web Design 2015/16 - Introduzione al corsoLaboratorio di Web Design 2015/16 - Introduzione al corso
Laboratorio di Web Design 2015/16 - Introduzione al corso
 
Workshop Ideare e creare Web Applications, Introduzione ad AngularJS
Workshop Ideare e creare Web Applications, Introduzione ad AngularJSWorkshop Ideare e creare Web Applications, Introduzione ad AngularJS
Workshop Ideare e creare Web Applications, Introduzione ad AngularJS
 
Introduzione a JavaScript
Introduzione a JavaScriptIntroduzione a JavaScript
Introduzione a JavaScript
 
Introduzione a GIT - Laboratorio di Web Design 2014/15
Introduzione a GIT - Laboratorio di Web Design 2014/15Introduzione a GIT - Laboratorio di Web Design 2014/15
Introduzione a GIT - Laboratorio di Web Design 2014/15
 
Developing for Performances - Laboratorio di Web Design 2014/15
Developing for Performances - Laboratorio di Web Design 2014/15Developing for Performances - Laboratorio di Web Design 2014/15
Developing for Performances - Laboratorio di Web Design 2014/15
 
Responsive Web Design & Mobile
Responsive Web Design & MobileResponsive Web Design & Mobile
Responsive Web Design & Mobile
 
The CSS Survival Manual - Giovanni Buffa (2014)
The CSS Survival Manual - Giovanni Buffa (2014)The CSS Survival Manual - Giovanni Buffa (2014)
The CSS Survival Manual - Giovanni Buffa (2014)
 
SEO - Laboratorio di Web Design 2014/15
SEO - Laboratorio di Web Design 2014/15SEO - Laboratorio di Web Design 2014/15
SEO - Laboratorio di Web Design 2014/15
 
Introduzione a SASS - Laboratorio di Web Design 2014/15
Introduzione a SASS - Laboratorio di Web Design 2014/15Introduzione a SASS - Laboratorio di Web Design 2014/15
Introduzione a SASS - Laboratorio di Web Design 2014/15
 
Introduzione a Drupal
Introduzione a DrupalIntroduzione a Drupal
Introduzione a Drupal
 
CSS - Box Model
CSS - Box ModelCSS - Box Model
CSS - Box Model
 
Laboratorio di Web Design Base - 2014/15 - HTML/5
Laboratorio di Web Design Base - 2014/15 - HTML/5Laboratorio di Web Design Base - 2014/15 - HTML/5
Laboratorio di Web Design Base - 2014/15 - HTML/5
 

Recently uploaded

Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
lorenzodemidio01
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
lorenzodemidio01
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
sasaselvatico
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
nico07fusco
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
giorgiadeascaniis59
 

Recently uploaded (17)

Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptxScienza Potere Puntoaaaaaaaaaaaaaaa.pptx
Scienza Potere Puntoaaaaaaaaaaaaaaa.pptx
 
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptxNicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
Nicola pisano aaaaaaaaaaaaaaaaaa(1).pptx
 
TeccarelliLorenzo-i4stilidellapitturaromana.docx
TeccarelliLorenzo-i4stilidellapitturaromana.docxTeccarelliLorenzo-i4stilidellapitturaromana.docx
TeccarelliLorenzo-i4stilidellapitturaromana.docx
 
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptxAdducchio.Samuel-Steve_Jobs.ppppppppppptx
Adducchio.Samuel-Steve_Jobs.ppppppppppptx
 
Tosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptxTosone Christian_Steve Jobsaaaaaaaa.pptx
Tosone Christian_Steve Jobsaaaaaaaa.pptx
 
Storia-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptxStoria-CarloMagno-TeccarelliLorenzo.pptx
Storia-CarloMagno-TeccarelliLorenzo.pptx
 
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptxTeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
TeccarelliLorenzo-PrimadiSteveJobselasuaconcorrenza.pptx
 
Una breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opereUna breve introduzione ad Elsa Morante, vita e opere
Una breve introduzione ad Elsa Morante, vita e opere
 
Presentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informaticaPresentazione tre geni della tecnologia informatica
Presentazione tre geni della tecnologia informatica
 
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptxProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
ProgettoDiEducazioneCivicaDefinitivo_Christian Tosone.pptx
 
case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....case passive_GiorgiaDeAscaniis.pptx.....
case passive_GiorgiaDeAscaniis.pptx.....
 
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
CHIẾN THẮNG KÌ THI TUYỂN SINH VÀO LỚP 10 THPT MÔN NGỮ VĂN - PHAN THẾ HOÀI (36...
 
LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................LE ALGHE.pptx ..........................
LE ALGHE.pptx ..........................
 
Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................Oppressi_oppressori.pptx................
Oppressi_oppressori.pptx................
 
TeccarelliLorenzo-Mitodella.cavernaa.pdf
TeccarelliLorenzo-Mitodella.cavernaa.pdfTeccarelliLorenzo-Mitodella.cavernaa.pdf
TeccarelliLorenzo-Mitodella.cavernaa.pdf
 
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
Esame di Stato 2024 - Materiale conferenza online 09 aprile 2024
 
Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.Vuoi girare il mondo? educazione civica.
Vuoi girare il mondo? educazione civica.
 

Introduzione al Theme Engin di Drupal 7

  • 2. Il template in Drupal definisce il livello di presentazione lato utente (front-end). Per far si che un template esista in Drupal è necessario un unico file .info. Tale file definisce le informazioni base del template stesso.
  • 5. il file .info deve essere dello stesso nome della cartella del nostro template.
  • 6. name = template name description = descrizione del template core = versione di drupal richiesta (6.x, 7.x,...) regions = le regioni del nostro template features = feauters attive su questo template stylesheets = fogli di stili associati al template scripts = javascript associati al template
  • 7. name = mytheme description = Tableless, recolorable... core = 7.x stylesheets[all][] = style.css stylesheets[print][] = print.css regions[left] = sidebar sinistra regions[content] = content regions[right] = sidebar destra features[] = logo features[] = name
  • 9. I file .tpl.php vengono usati per strutturare visivamente il sito. Ogni file appartiene ad una determinata struttura.
  • 10. Si occupa della struttura HTML dell’intero sito. Viene utilizzato per definire esclusivamente il DTD e i tag principale dell’html (html-head-body). html.tpl.php
  • 11. Si occupa della struttura generale che, difficilmente, cambia all’interno del sito. Crea il contenitore per il nostro contenuto. page.tpl.php
  • 12. Si occupa della struttura di ogni contenuto che inseriamo. node--article.tpl.php node.tpl.php node.tpl.php
  • 13. Si occupa della struttura delle regioni. region--header.tpl.php region.tpl.php region.tpl.php
  • 14. Si occupa della struttura dei blocchi. block--content.tpl.php block.tpl.php block.tpl.php
  • 15. Si occupa della struttura di ogni singolo campo. field--field-name-article.tpl.php field--field-name.tpl.php field.tpl.php field.tpl.php
  • 16. Per approfondimenti su template suggestion: https://www.drupal.org/node/1089656
  • 17. 2015 Giovanni Buffa - CC by-nd 3.0