8. TypoScript
TypoScript è l’area più ampia e allo stesso tempo la più importante di TYPO3, che ogni integratore deve padroneggiare. Quasi tutti i passaggi necessari per la creazione di un sito Web - dalla configurazione passando dai template, alla creazione di menu - vengono tutti implementati tramite TypoScript. Non devi conoscere a memoria tutte le opzioni, ma hai bisogno di una comprensione approfondita dei concetti di base e di come applicarli.
Questo capitolo spiega tutti gli aspetti di TypoScript che sono rilevanti per l’esame.
Ciò include oggetti di contenuto, creazione di menu, condizioni, funzioni speciali come stdWrap, tipi di dati come getText e molto altro.
La dimensione di questo capitolo mostra anche l’importanza di TypoScript nell’esame.
TypoScript Reference (TSref)
è una delle documentazioni più importanti che ogni integratore deve conoscere.
I seguenti argomenti sono trattati nel capitolo:
- Generalità
- TypoScript Setup e Constants (impostazioni e costanti)
- Operatori
- Condizioni
- Imagini
- Oggetti di Contenuto (cObj)
- Resa di contnuto
- Creazione menu
- La funzione
optionSplit - Editor Costanti, TypoScript Object Browser e Analizza Template
- Tipo di dati
getText - La funzione
stdWrap - La funzione
userFunc
8.1 Generalità
Se vuoi lavorare in modo efficiente con TypoScript, devi prima capire i concetti di base e l’implementazione tecnica.
- Cos’è TypoScript?
- Cosa sono gli oggetti di livello superiore?
8.2 Setup e Constants di TypoScript
Un template TypoScript comprende le aree constants e setup. Mentre l’area constants accetta semplicemente le costanti, la funzionalità del sito web si trova nell’area setup. In entrambe le aree, TypoScript rappresenta un metodo per descrivere le informazioni gerarchiche.
8.3 Condizioni
Condizioni vengono utilizzate per intervenire nella procedura sequenziale di TypoScript in dipendenza dal contenuto di una variabile o dal tempo. Possono essere paragonati alle dichiarazioni “if” nei linguaggi di programmazione. Dipendente dall’esito dell’interrogativo, una sezione TypoScript viene eseguita in aggiunta o al posto di altre sezioni di codice.
- Quali variabili puoi usare?
- Come implementate condizioni legate al tempo?
- Puoi definire proprie condizioni?
8.4 Operatori
C’è solo un piccolo numero di operatori in TypoScript.
- Sei sicuro di sapere come fare riferimento invece di copiare?
- Come eliminare?
- Come utilizzare una funzione per modifiche e quale funzione utilizzare?
Puoi leggere su questo argomento nel documento intitolato “TypoScript Syntax and In-depth Study”, che fa parte della documentazione di base su https://docs.typo3.org.
8.5 Immagini
A differenza dei testi, immagini non vengono salvate direttamente nella banca dati, ma sono invece referenziate, e spesso anche create da TYPO3.
Due oggetti di contenuto eseguono questa operazione: IMAGE (o IMG_RESOURCE) e GIFBUILDER, di solito un sottoggetto di IMAGE.
- Quali sono i valori generati da questi oggetti?
- Come puoi usarli per visualizzare grafica e creare menu e immagini d’intestazione?
- Dove cerchi se si verificano problemi durante la generazione di immagini?
8.6 Oggetti di Contenuto (cObj)
Gli oggetti di contenuto sono contenitori per contenuti in TYPO3 e vi sono oggetti diversi per diversi tipi di contenuto.
- Sei in grado di gestire un oggetto
COA? - Quando vengono memorizzati i contenuti nella cache?
- Come puoi ottenere informazioni direttamente dalla banca dati?
- Come si integra una funzione personalizzata?
L’esame potrebbe porre domande generali su tutti gli oggetti in TYPO3, ma potrebbe anche chiedere quelli più specifiche. Assicurati di essere a conoscenza anche delle variazioni che usi solo raramente.
8.7 Resa di contenuti
La resa di contenuto è la visualizzazione dei contenuti nel frontend, quindi sul sito Web visibile. Tratta meno sugli elementi e più sul salvataggio, la manipolazione e la resa successiva, che può essere adattato usando TypoScript. Per un approfondimento utile su questo argomento, puoi leggere il “TypoScript Syntax and In-depth Study” – un documento che fa parte della documentazione di base su https://docs.typo3.org.
8.8 Creazione di menu
Il menu è un componente essenziale per la maggior parte dei siti web.
Esistono numerosi tipi di menu e tutti sono basati sull’oggetto di contenuto HMENU (Hierarchical MENU, ossia ‘gerarchico’).
Questo oggetto consente di implementare diversi tipi di visualizzazione come menu di testo, menu grafici o menu su livelli,
e anche per determinare quali pagine sono disponibili nel menu.
Alcuni menu semplicemente rispecchiano la struttura della pagina, ma ci sono anche menu di navigazione elaborati che possono consistere in pagine specificate singolarmente, oppure, per dare un altro esempio, delle 15 pagine aggiornate il più recente.
8.9 La funzione optionSplit
optionSplit è una funzione che separa voci in diverse parti.
Viene spesso utilizzato nei menu, ad esempio, se diverse voci di menu (prima, seconda o ultima voce ecc.) devono essere visualizzate in modo diverso.
La funzione optionSplit fornisce una varietà di comportamenti che sembrano quasi identici a prima vista;
questo è il motivo per cui i seguenti esempi di codice sono molto simili.
Prenditi tempo per analizzare e capire il codice, sia ora che nell’esame.
8.10 Object Browser, Analizza Template e Editor Costanti
Tutti i template TypoScript sono riassunti e formano una grande matrice di TypoScript che viene chiamato il TypoScript-Object. Potresti immaginare questo oggetto come un albero in cui le informazioni sono organizzate gerarchicamente.
Il TypoScript Object Browser (TSOB) consente di visualizzare e analizzare questa struttura ad albero.
Il TypoScript Analizza Template consente di visualizzare la composizione, la struttura e la sequenza dei template del tuo sito web. È possibile determinare oltre ogni dubbio quale template viene caricato quando, e si può vedere se un template successivo sovrascrive le istruzioni di uno precedente.
Puoi usare l’Editor Costanti per inserire comodamente le costanti TypoScript in un modulo di backend.
8.11 Il tipo di dati getText
Il tipo di dati getText consente di ottenere dati dinamici durante la resa della pagina.
Questo è possibile per le proprietà data, dataWrap e insertData di stdWrap.
getText è descritto come un tipo di dati in questo contesto.
Le opzioni fornite da getText sono molto estese e talvolta non facili da comprendere.
Puoi trovare una panoramica dettagliata nella sezione “Data types” della
TypoScript Reference (TSref).
8.12 La funzione stdWrap
Le proprietà (o funzioni) di stdWrap costituiscono probabilmente il concetto di prestazione più elevato in TypoScript.
Nei Riferimenti su TypoScript (TSref), di solito vengono chiamate funzioni del tipo di dati stdWrap.
- Come si crea un link con le funzioni di
stdWrap? - Come si fa a interrogare la banca dati?
- Puoi applicare
stdWrapin modo ricorsivo, e se sì, come?
Ulteriori informazioni su questo argomento sostanziale sono disponibili nella sezione “Functions” della TypoScript Reference (TSref).