Changer un titre de page à partir d'une user class

De Typo3 CMS / Documentation Typo3 / Support Typo3.

Il arrive que pour différentes raisons, on souhaite donner dynamiquement un titre à une page dans Typo3. Il peut s'agir par exemple de donner à la page un titre dépendant de son contenu.

Prenons le cas d'une galerie photo. Un plugin permet de charger différentes galeries. Nous voulons affecter à la page le titre de la galerie, ceci permettant d'améliorer le référencement.

Pour cela nous agirons en deux temps :

  • Définition d'une user_class
  • Ajout du typoscript dans la page


Définition de la user_class

La user class va permettre de générer le titre de la page et de le renvoyer. Cette user_class sera enregistré dans un fichier php du même nom (user_class_galerie.php)

<?php
class user_class_galerie {
 
 function changetitle($title)
 {
     if (condition) {
         $title= $title.' mon ajout de titre';
     }
 
     //Ici se trouvera le code permettant de récupérer le title que l'on veut affecter à la page
     return ($title);
 }
 
}
?>

Typoscript de la page

Nous pouvons désormais aller dans le template de la page afin de lier le titre de la page à la fonction définit ci-dessus

Pour cela chargeons la user_class

includeLibs.pagetitle = typo3conf/ext/Galerie_Photo/user_class_galerie.php

et invoquons la fonction de modification du titre

config.titleTagFunction = user_class_galerie->changetitle
Outils personnels