際際滷

際際滷Share a Scribd company logo
Typoscript,
      questo sconosciuto
      Relatore: Roberto Torresani




T3Camp Italia                               Bologna 26/27 Novembre 2010
Il primo evento italiano dedicato a TYPO3   Novotel fiera Bologna
Roberto Torresani
         Libero professionista dal 2003
         Socio fondatore della cooperativa POSIT di Trento

         Utilizza TYPO3 dal 2005
         Consulente 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;
Pag. 2                    Roberto Torresani   http://www.t3campitalia.it/
In questi 40 minuti


        Non si vuol fare un corso

        Dare comprensione di cosa 竪 typoscript

        Fare una panoramica di dove 竪 utilizzato

        Dove trovare i manuali




Pag. 3                  Roberto Torresani   http://www.t3campitalia.it/
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



Pag. 4                  Roberto Torresani   http://www.t3campitalia.it/
Dove 竪 utilizzato



        User/Usergroup Typoscript

        Page Typoscript

        Typoscript template (frontend rendering)

        Personalizzazione Estensioni

        Nel proprio codice php

Pag. 5                 Roberto Torresani   http://www.t3campitalia.it/
Primo esempio


        Esempio typoscript:
         page = PAGE
         page.10 = TEXT
         page.10.value = T3Camp Italia


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

Pag. 6                   Roberto Torresani   http://www.t3campitalia.it/
Operatori

        =: assegnamento di valore
         page.10.value = T3Camp Italia
        <: copia
         tmp < page
        >: azzeramento
         tmp >
        <= riferimento
         test <= page
        :=: assegna valore richiamando funzione
         page.10 = 1,2,3
         page.10 := addToList(4,5)

Pag. 7                     Roberto Torresani   http://www.t3campitalia.it/
Parentesi grafe


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

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


Pag. 8                 Roberto Torresani   http://www.t3campitalia.it/
Parentesi tonda


        (  ): multi riga


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




Pag. 9                   Roberto Torresani   http://www.t3campitalia.it/
Parentesi quadre


         [  ]: condizioni

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




Pag. 10                   Roberto Torresani   http://www.t3campitalia.it/
Content Object


         PAGE
         HMENU
         TEXT
         HTML
         IMAGE
         COA
         CONTENT
         ...

Pag. 11               Roberto Torresani   http://www.t3campitalia.it/
Funzioni typoscript


         StdWrap
         optionSplit
         imgResource
         numRows
         select
         split
         typolink
         ...

Pag. 12                   Roberto Torresani   http://www.t3campitalia.it/
stdWrap


         Funzioni sui contenuti

          page.10 = HTML
          page.10.value = T3Camp Italia
          page.10.value.wrap = <h1>|</h1>
          page.10.value.case = upper
          page.10.value.crop = 5 | ...

         Determinato ordine di esecuzione


Pag. 13                  Roberto Torresani   http://www.t3campitalia.it/
imgResource



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




Pag. 14                 Roberto Torresani   http://www.t3campitalia.it/
if


         Comparazione di valori

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



Pag. 15                     Roberto Torresani   http://www.t3campitalia.it/
if (altro esempio)


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

Pag. 16                  Roberto Torresani   http://www.t3campitalia.it/
typolink


         page.10.value = TEXT
          page.10.typolink {
            parameter = http://www.t3campitalia.it
            extTarget = _blank
            aTagParams = class=verde
          }

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




Pag. 17                     Roberto Torresani   http://www.t3campitalia.it/
Object CONTENT


         page.10 = CONTENT
          page.10.table = tt_content
          page.10.select {
             orderBy = sorting
             where = colPos = 0
          }

         page.10 < styles.content.get



Pag. 18                  Roberto Torresani   http://www.t3campitalia.it/
css_styled_content


         Da includere nel template

         Quasi 2000 righe (Compresi commenti) di codice
          typoscript

         Visibile con Template Analyzer




Pag. 19                  Roberto Torresani   http://www.t3campitalia.it/
Manuali




Pag. 20     Roberto Torresani   http://www.t3campitalia.it/
tt_news




Pag. 21     Roberto Torresani   http://www.t3campitalia.it/
Typoscript e template




Pag. 22     Roberto Torresani   http://www.t3campitalia.it/
Errori?




Pag. 23     Roberto Torresani   http://www.t3campitalia.it/
Qualche linea di typoscript




         page = PAGE
          page.10 = TEMPLATE
          page.10.template = FILE
          page.10.template.file = fileadmin/home.html
          page.stylesheet = fileadmin/home.css




Pag. 24                 Roberto Torresani   http://www.t3campitalia.it/
Condizioni di template


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




Pag. 25                 Roberto Torresani   http://www.t3campitalia.it/
Page typoscript




Pag. 26     Roberto Torresani   http://www.t3campitalia.it/
Codice page typoscript


         TCEMAIN.clearCacheCmd = 1, 33, 34




Pag. 27                 Roberto Torresani   http://www.t3campitalia.it/
User/usergroup typoscript




Pag. 28     Roberto Torresani   http://www.t3campitalia.it/
Esempio user typoscript


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




Pag. 29                  Roberto Torresani   http://www.t3campitalia.it/
Manuali


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

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

         Manuali di tutte le estensioni




Pag. 30                  Roberto Torresani   http://www.t3campitalia.it/
Conclusioni


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




Pag. 31                Roberto Torresani   http://www.t3campitalia.it/
Roberto Torresani




          Roberto Torresani
          typo3@torresani.eu

          www.posit.it
          www.torresani.eu




Pag. 32                    Roberto Torresani   http://www.t3campitalia.it/
Grazie




Pag. 33     Roberto Torresani   http://www.t3campitalia.it/

More Related Content

[TYPO3] Typoscript, questo sconosciuto

  • 1. Typoscript, questo sconosciuto Relatore: Roberto Torresani T3Camp Italia Bologna 26/27 Novembre 2010 Il primo evento italiano dedicato a TYPO3 Novotel fiera Bologna
  • 2. Roberto Torresani Libero professionista dal 2003 Socio fondatore della cooperativa POSIT di Trento Utilizza TYPO3 dal 2005 Consulente 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; Pag. 2 Roberto Torresani http://www.t3campitalia.it/
  • 3. In questi 40 minuti Non si vuol fare un corso Dare comprensione di cosa 竪 typoscript Fare una panoramica di dove 竪 utilizzato Dove trovare i manuali Pag. 3 Roberto Torresani http://www.t3campitalia.it/
  • 4. 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 Pag. 4 Roberto Torresani http://www.t3campitalia.it/
  • 5. Dove 竪 utilizzato User/Usergroup Typoscript Page Typoscript Typoscript template (frontend rendering) Personalizzazione Estensioni Nel proprio codice php Pag. 5 Roberto Torresani http://www.t3campitalia.it/
  • 6. Primo esempio Esempio typoscript: page = PAGE page.10 = TEXT page.10.value = T3Camp Italia Corrispettivo in php: $data['page'] = 'PAGE'; $data['page.'][10] = 'TEXT'; $data['page.']['10.']['value'] = 'T3Camp Italia'; Pag. 6 Roberto Torresani http://www.t3campitalia.it/
  • 7. Operatori =: assegnamento di valore page.10.value = T3Camp Italia <: copia tmp < page >: azzeramento tmp > <= riferimento test <= page :=: assegna valore richiamando funzione page.10 = 1,2,3 page.10 := addToList(4,5) Pag. 7 Roberto Torresani http://www.t3campitalia.it/
  • 8. Parentesi grafe { }: oggetti page.10.value = T3Camp Italia page.10.wrap = <h1>|</h1> Equivale: page.10 { value = T3Camp Italia wrap = <h1>|</h1> } Pag. 8 Roberto Torresani http://www.t3campitalia.it/
  • 9. Parentesi tonda ( ): multi riga page.10.value ( T3Camp Italia<br/> Bologna 26/27 ottobre<br/> Roberto Torresani ) Pag. 9 Roberto Torresani http://www.t3campitalia.it/
  • 10. Parentesi quadre [ ]: condizioni [browser = msie] page.5 = TEXT page.5.value = Passa a Firefox [end] Pag. 10 Roberto Torresani http://www.t3campitalia.it/
  • 11. Content Object PAGE HMENU TEXT HTML IMAGE COA CONTENT ... Pag. 11 Roberto Torresani http://www.t3campitalia.it/
  • 12. Funzioni typoscript StdWrap optionSplit imgResource numRows select split typolink ... Pag. 12 Roberto Torresani http://www.t3campitalia.it/
  • 13. stdWrap Funzioni sui contenuti page.10 = HTML page.10.value = T3Camp Italia page.10.value.wrap = <h1>|</h1> page.10.value.case = upper page.10.value.crop = 5 | ... Determinato ordine di esecuzione Pag. 13 Roberto Torresani http://www.t3campitalia.it/
  • 14. imgResource page.10 = IMAGE page.10 { file = logo.jpg file.width = 400 file.height = 300 file.params = -rotate 90 } Pag. 14 Roberto Torresani http://www.t3campitalia.it/
  • 15. if Comparazione di valori page.1 = HTML page.1 { value = 3 maggiore di 2 value.if.value = 2 value.if.isGreaterThan = 3 } Pag. 15 Roberto Torresani http://www.t3campitalia.it/
  • 16. if (altro esempio) lib.columnRight = COA lib.columnRight { 10 = COA 10 { 10 = TEMPLATE 10.isTrue.numRows < styles.content.getRight 10 { template = FILE template.file = fileadmin/2column.html } } Pag. 16 Roberto Torresani http://www.t3campitalia.it/
  • 17. typolink page.10.value = TEXT page.10.typolink { parameter = http://www.t3campitalia.it extTarget = _blank aTagParams = class=verde } page.10.typolink.parameter = www.t3campitalia.it _blank verde Pag. 17 Roberto Torresani http://www.t3campitalia.it/
  • 18. Object CONTENT page.10 = CONTENT page.10.table = tt_content page.10.select { orderBy = sorting where = colPos = 0 } page.10 < styles.content.get Pag. 18 Roberto Torresani http://www.t3campitalia.it/
  • 19. css_styled_content Da includere nel template Quasi 2000 righe (Compresi commenti) di codice typoscript Visibile con Template Analyzer Pag. 19 Roberto Torresani http://www.t3campitalia.it/
  • 20. Manuali Pag. 20 Roberto Torresani http://www.t3campitalia.it/
  • 21. tt_news Pag. 21 Roberto Torresani http://www.t3campitalia.it/
  • 22. Typoscript e template Pag. 22 Roberto Torresani http://www.t3campitalia.it/
  • 23. Errori? Pag. 23 Roberto Torresani http://www.t3campitalia.it/
  • 24. Qualche linea di typoscript page = PAGE page.10 = TEMPLATE page.10.template = FILE page.10.template.file = fileadmin/home.html page.stylesheet = fileadmin/home.css Pag. 24 Roberto Torresani http://www.t3campitalia.it/
  • 25. Condizioni di template [globalVar = TSFE:id = 5] page.10.template.file = fileadmin/homespecial.html page.stylesheet = fileadmin/homespecial.css [end] Pag. 25 Roberto Torresani http://www.t3campitalia.it/
  • 26. Page typoscript Pag. 26 Roberto Torresani http://www.t3campitalia.it/
  • 27. Codice page typoscript TCEMAIN.clearCacheCmd = 1, 33, 34 Pag. 27 Roberto Torresani http://www.t3campitalia.it/
  • 28. User/usergroup typoscript Pag. 28 Roberto Torresani http://www.t3campitalia.it/
  • 29. Esempio user typoscript AdmPanel { enable.all = 1 enable.edit = 1 enable.cache = 1 } Pag. 29 Roberto Torresani http://www.t3campitalia.it/
  • 30. Manuali http://typo3.org/documentation/ punto 4: Learning more about typoscript http://wiki.typo3.org/wiki/Ts45min Manuali di tutte le estensioni Pag. 30 Roberto Torresani http://www.t3campitalia.it/
  • 31. Conclusioni E' importare sapere come raggiungere l'obiettivo: conoscendo il percorso e in sicurezza Pag. 31 Roberto Torresani http://www.t3campitalia.it/
  • 32. Roberto Torresani Roberto Torresani typo3@torresani.eu www.posit.it www.torresani.eu Pag. 32 Roberto Torresani http://www.t3campitalia.it/
  • 33. Grazie Pag. 33 Roberto Torresani http://www.t3campitalia.it/