[typo3] typoscript, questo sconosciuto
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
![Page 1: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/1.jpg)
Bologna 26/27 Novembre 2010Novotel fiera Bologna
Typoscript,questo sconosciutoRelatore: Roberto Torresani
T3Camp Italia Il primo evento italiano dedicato a TYPO3
![Page 2: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/2.jpg)
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;
![Page 3: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/3.jpg)
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
![Page 4: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/4.jpg)
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
![Page 5: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/5.jpg)
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
![Page 6: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/6.jpg)
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';
![Page 7: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/7.jpg)
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)
![Page 8: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/8.jpg)
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>}
![Page 9: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/9.jpg)
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)
![Page 10: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/10.jpg)
http://www.t3campitalia.it/
Pag. 10Pag. 10 Roberto Torresani
Parentesi quadre
● “[ … ]”: condizioni
[browser = msie]page.5 = TEXTpage.5.value = Passa a Firefox[end]
![Page 11: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/11.jpg)
http://www.t3campitalia.it/
Pag. 11Pag. 11 Roberto Torresani
Content Object
● PAGE● HMENU● TEXT● HTML● IMAGE● COA● CONTENT● ...
![Page 12: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/12.jpg)
http://www.t3campitalia.it/
Pag. 12Pag. 12 Roberto Torresani
Funzioni typoscript
● StdWrap● optionSplit● imgResource● numRows● select● split● typolink● ...
![Page 13: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/13.jpg)
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
![Page 14: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/14.jpg)
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}
![Page 15: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/15.jpg)
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}
![Page 16: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/16.jpg)
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 }}
![Page 17: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/17.jpg)
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
![Page 18: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/18.jpg)
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
![Page 19: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/19.jpg)
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
![Page 20: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/20.jpg)
http://www.t3campitalia.it/
Pag. 20Pag. 20 Roberto Torresani
Manuali
![Page 21: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/21.jpg)
http://www.t3campitalia.it/
Pag. 21Pag. 21 Roberto Torresani
tt_news
![Page 22: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/22.jpg)
http://www.t3campitalia.it/
Pag. 22Pag. 22 Roberto Torresani
Typoscript e template
![Page 23: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/23.jpg)
http://www.t3campitalia.it/
Pag. 23Pag. 23 Roberto Torresani
Errori?
![Page 24: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/24.jpg)
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
![Page 25: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/25.jpg)
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]
![Page 26: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/26.jpg)
http://www.t3campitalia.it/
Pag. 26Pag. 26 Roberto Torresani
Page typoscript
![Page 27: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/27.jpg)
http://www.t3campitalia.it/
Pag. 27Pag. 27 Roberto Torresani
Codice page typoscript
● TCEMAIN.clearCacheCmd = 1, 33, 34
![Page 28: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/28.jpg)
http://www.t3campitalia.it/
Pag. 28Pag. 28 Roberto Torresani
User/usergroup typoscript
![Page 29: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/29.jpg)
http://www.t3campitalia.it/
Pag. 29Pag. 29 Roberto Torresani
Esempio user typoscript
● AdmPanel { enable.all = 1 enable.edit = 1 enable.cache = 1}
![Page 30: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/30.jpg)
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
![Page 31: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/31.jpg)
http://www.t3campitalia.it/
Pag. 31Pag. 31 Roberto Torresani
Conclusioni
E' importare sapere come raggiungere l'obiettivo: conoscendo il percorso e in sicurezza
![Page 32: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/32.jpg)
http://www.t3campitalia.it/
Pag. 32Pag. 32 Roberto Torresani
Roberto Torresani
Roberto [email protected]
www.posit.it
www.torresani.eu
![Page 33: [TYPO3] Typoscript, questo sconosciuto](https://reader034.vdocumenti.com/reader034/viewer/2022050815/5484bb0b5906b5b2158b4770/html5/thumbnails/33.jpg)
http://www.t3campitalia.it/
Pag. 33Pag. 33 Roberto Torresani
Grazie