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 [email protected]
www.posit.it
www.torresani.eu
http://www.t3campitalia.it/
Pag. 33Pag. 33 Roberto Torresani
Grazie
Top Related