T3FRUniversity 2005 - Boîte à outils - TypoScript

Documentation

La référence complète du TypoScript peut être obtenue à l'adresse suivante:
typo3.org/documentation/document-library/references/doc_core_tsref/current/
Cette documentation s'adresse aux personnes possédant déjà une certaine expérience en TypoScript. Peut les débutants, un tutoriel est également disponible (TypoScript By Example):

TypoScript: OptionSplit

L'OptionSplit est une fonction TypoScript extrêmement puissante et pratique. Elle nécessite par contre un peu de pratique pour être utilisée de manière correcte.
Cette fonction, utilisée notemment dans la construction de menus dynamiques, sert à attribuer des valeurs différentes pour un groupe d'objet, en fonction de leurs positions.
Les valeurs sont séparées en utilisant deux types de marqueurs spécifiques:
|*|
Ce marqueur est utilisé pour séparer les valeurs en 3 groupes (premier, milieu, et dernier). Il est donc impossible d'en utiliser plus que deux.
||
Ce marqueur sert à séparer chaque groupe de valeurs séparées préalablement par le premier marqueur en un nombre N de valeurs.
Exemple:
premier_1 || premier_2 |*| milieu |*| dernier_1 || dernier_2 || dernier_3
Règles:
Il existe 4 règles qui régissent le concept de l'OptionSplit:
  1. La priorité des marqueurs est la suivante: dernier, premier, milieu.
  2. Si la valeur du milieu est vide, c'est la dernière partie du premier groupe de valeurs qui sera utilisée à la place.
  3. Si la valeur du début ou du milieu est vide, c'est la première partie du dernier groupe qui sera utilisée pour ces valeurs.
  4. La valeur du milieu se répète au besoin, en reprenant à chaque fois depuis le début de son sous-groupe.

TypoScript: RootLine

Voici le code TypoScript nécessaire à la création d'un chemin d'accès vers la page courante, appelé rootline.
Notez l'utilisation de l'OptionSplit dans la configuration de ce type de menu.
/** * Rootline */ lib.menus.rootline = HMENU lib.menus.rootline { // Rootline type special = rootline // Text menu 1 = TMENU 1 { // Wrap wrap = <div class="menu_rootline"<Vous êtes ici: /  |</div> // Normal state NO.linkWrap = | /&nbsp; |*||*| | } }

TypoScript: Multi-langue

Dans le cas d'un site Typo3 multi-langue, il est nécessaire de configurer chaque langue dans un template TypoScript.
En premier lieu, il faut définir la langue par défaut du site:
/** * Config object */ config { // Default language settings sys_language_uid = 0 language = fr locale_all = fr_FR linkVars = L }
Tout d'abord, nous définissons quelle langue de site (créée préalablement dans l'interface d'administration). En l'occurence, 0 puisqu'il s'agit de la langue par défaut.
Le deuxième paramètre indique le code de la langu, tandis que le troisième sert à configurer les locales (utilisées par exemple pour l'affichage des dates au format long).
Le quatrième paramètre, quant à lui, indique au système quelle variable sera utilisée pour changer de langue.
Ensuite, chaque langue peut être configurée séparément dans des conditions TypoScript. Notez que ces conditions ne peuvent se trouver qu'au premier niveau du code TypoScript, c'est à dire pas à l'intérieur d'un autre objet:
// French language [globalVar = GP:L = 0] config.sys_language_uid = 0 config.language = fr config.locale_all = fr_FR [GLOBAL] // English language [globalVar = GP:L = 1] config.sys_language_uid = 1 config.language = en config.locale_all = en_EN [GLOBAL]