[TYPO3] Typoscript, questo sconosciuto

Post on 06-Dec-2014

3.076 views 1 download

description

Presentazione fatta durante il T3Camp Italia 2010, primo evento italiano di TYPO3, da Roberto Torresani (Bologna 27 novembre 2010). In questo talk saranno fornite informazioni base di typoscript: come leggere i manuali, ed alcuni casi pratici di utilizzo. Si parlerà di StdWrap, top object, creazione di interfacce web, personalizzazioni di estensioni, gestione di permessi del backend e altre funzionalità. Un mondo dietro le quinte che farà capire perché l'utilizzo di un cms enterprise, definito da alcuni troppo complicato, può dare grossi risultati con pochi sforzi. Generalmente, si adoperano solo le funzionalità più intuitive dei software a propria disposizione, rischiando di non approfondire le potenzialità che ne sono presenti. Anche per TYPO3, molti utenti decidono che è sufficiente limitarsi a gestire solo quello che dipende da un click del mouse. La marcia in più è data da typoscript.

Transcript of [TYPO3] Typoscript, questo sconosciuto

Bologna 26/27 Novembre 2010Novotel fiera Bologna

Typoscript,questo sconosciutoRelatore: Roberto Torresani

T3Camp Italia Il primo evento italiano dedicato a TYPO3

http://www.t3campitalia.it/

Pag. 2Pag. 2 Roberto Torresani

Roberto Torresani

Libero professionista dal 2003Socio fondatore della cooperativa POSIT di Trento

Utilizza TYPO3 dal 2005Consulente e formatore per aziende e web agency di tutta Italia

Oltre TYPO3: progetto NATO per Esercito; booking turistico per regione FVG, Liguria, Istria; sistema telefonico automatico basato su Asterisk con sintetizzatore e riconoscimento vocale Loquendo;

http://www.t3campitalia.it/

Pag. 3Pag. 3 Roberto Torresani

● Non si vuol fare un corso

● Dare comprensione di cosa è typoscript

● Fare una panoramica di dove è utilizzato

● Dove trovare i manuali

In questi 40 minuti

http://www.t3campitalia.it/

Pag. 4Pag. 4 Roberto Torresani

Cos'è typoscript

● Non è un linguaggio di programmazione

● E' un “Linguaggio” di configurazione

● E' una semplice assegnazione di valori

● E' un array usato dal codice php

http://www.t3campitalia.it/

Pag. 5Pag. 5 Roberto Torresani

Dove è utilizzato

● User/Usergroup Typoscript

● Page Typoscript

● Typoscript template (frontend rendering)

● Personalizzazione Estensioni

● Nel proprio codice php

http://www.t3campitalia.it/

Pag. 6Pag. 6 Roberto Torresani

Primo esempio

● Esempio typoscript:page = PAGEpage.10 = TEXTpage.10.value = T3Camp Italia

● Corrispettivo in php:$data['page'] = 'PAGE';$data['page.'][10] = 'TEXT';$data['page.']['10.']['value'] = 'T3Camp Italia';

http://www.t3campitalia.it/

Pag. 7Pag. 7 Roberto Torresani

Operatori

● “=”: assegnamento di valorepage.10.value = T3Camp Italia

● “<”: copiatmp < page

● “>”: azzeramentotmp >

● “<=” riferimentotest <= page

● “:=”: assegna valore richiamando funzionepage.10 = 1,2,3page.10 := addToList(4,5)

http://www.t3campitalia.it/

Pag. 8Pag. 8 Roberto Torresani

Parentesi grafe

● “{ … }”: oggettipage.10.value = T3Camp Italiapage.10.wrap = <h1>|</h1>

● Equivale:

page.10 { value = T3Camp Italia wrap = <h1>|</h1>}

http://www.t3campitalia.it/

Pag. 9Pag. 9 Roberto Torresani

Parentesi tonda

● “( … )”: multi riga

page.10.value ( T3Camp Italia<br/> Bologna 26/27 ottobre<br/> Roberto Torresani)

http://www.t3campitalia.it/

Pag. 10Pag. 10 Roberto Torresani

Parentesi quadre

● “[ … ]”: condizioni

[browser = msie]page.5 = TEXTpage.5.value = Passa a Firefox[end]

http://www.t3campitalia.it/

Pag. 11Pag. 11 Roberto Torresani

Content Object

● PAGE● HMENU● TEXT● HTML● IMAGE● COA● CONTENT● ...

http://www.t3campitalia.it/

Pag. 12Pag. 12 Roberto Torresani

Funzioni typoscript

● StdWrap● optionSplit● imgResource● numRows● select● split● typolink● ...

http://www.t3campitalia.it/

Pag. 13Pag. 13 Roberto Torresani

stdWrap

● Funzioni sui contenuti

page.10 = HTMLpage.10.value = T3Camp Italiapage.10.value.wrap = <h1>|</h1>page.10.value.case = upperpage.10.value.crop = 5 | ...

● Determinato ordine di esecuzione

http://www.t3campitalia.it/

Pag. 14Pag. 14 Roberto Torresani

imgResource

● page.10 = IMAGEpage.10 { file = logo.jpg file.width = 400 file.height = 300 file.params = -rotate 90}

http://www.t3campitalia.it/

Pag. 15Pag. 15 Roberto Torresani

if

● Comparazione di valori

● page.1 = HTMLpage.1 { value = 3 maggiore di 2 value.if.value = 2 value.if.isGreaterThan = 3}

http://www.t3campitalia.it/

Pag. 16Pag. 16 Roberto Torresani

if (altro esempio)

● lib.columnRight = COAlib.columnRight { 10 = COA 10 { 10 = TEMPLATE 10.isTrue.numRows < styles.content.getRight 10 { template = FILE template.file = fileadmin/2column.html }}

http://www.t3campitalia.it/

Pag. 17Pag. 17 Roberto Torresani

typolink

● page.10.value = TEXTpage.10.typolink { parameter = http://www.t3campitalia.it extTarget = _blank aTagParams = class=”verde”

}

● page.10.typolink.parameter = www.t3campitalia.it _blank verde

http://www.t3campitalia.it/

Pag. 18Pag. 18 Roberto Torresani

Object CONTENT

● page.10 = CONTENTpage.10.table = tt_contentpage.10.select { orderBy = sorting where = colPos = 0}

● page.10 < styles.content.get

http://www.t3campitalia.it/

Pag. 19Pag. 19 Roberto Torresani

css_styled_content

● Da includere nel template

● Quasi 2000 righe (Compresi commenti) di codice typoscript

● Visibile con Template Analyzer

http://www.t3campitalia.it/

Pag. 20Pag. 20 Roberto Torresani

Manuali

http://www.t3campitalia.it/

Pag. 21Pag. 21 Roberto Torresani

tt_news

http://www.t3campitalia.it/

Pag. 22Pag. 22 Roberto Torresani

Typoscript e template

http://www.t3campitalia.it/

Pag. 23Pag. 23 Roberto Torresani

Errori?

http://www.t3campitalia.it/

Pag. 24Pag. 24 Roberto Torresani

Qualche linea di typoscript

● page = PAGEpage.10 = TEMPLATEpage.10.template = FILEpage.10.template.file = fileadmin/home.htmlpage.stylesheet = fileadmin/home.css

http://www.t3campitalia.it/

Pag. 25Pag. 25 Roberto Torresani

Condizioni di template

● [globalVar = TSFE:id = 5]page.10.template.file = fileadmin/homespecial.htmlpage.stylesheet = fileadmin/homespecial.css[end]

http://www.t3campitalia.it/

Pag. 26Pag. 26 Roberto Torresani

Page typoscript

http://www.t3campitalia.it/

Pag. 27Pag. 27 Roberto Torresani

Codice page typoscript

● TCEMAIN.clearCacheCmd = 1, 33, 34

http://www.t3campitalia.it/

Pag. 28Pag. 28 Roberto Torresani

User/usergroup typoscript

http://www.t3campitalia.it/

Pag. 29Pag. 29 Roberto Torresani

Esempio user typoscript

● AdmPanel { enable.all = 1 enable.edit = 1 enable.cache = 1}

http://www.t3campitalia.it/

Pag. 30Pag. 30 Roberto Torresani

Manuali

● http://typo3.org/documentation/ punto 4: Learning more about typoscript

● http://wiki.typo3.org/wiki/Ts45min

● Manuali di tutte le estensioni

http://www.t3campitalia.it/

Pag. 31Pag. 31 Roberto Torresani

Conclusioni

E' importare sapere come raggiungere l'obiettivo: conoscendo il percorso e in sicurezza

http://www.t3campitalia.it/

Pag. 32Pag. 32 Roberto Torresani

Roberto Torresani

Roberto Torresanitypo3@torresani.eu

www.posit.it

www.torresani.eu

http://www.t3campitalia.it/

Pag. 33Pag. 33 Roberto Torresani

Grazie