Intégrer des chaînes de caractères traduisibles dans un template

From Joomla! Documentation

This page is a translated version of the page Embedding translatable strings in the template and the translation is 100% complete.

Other languages:
Deutsch • ‎English • ‎español • ‎français • ‎Nederlands • ‎русский

Dans le template lui-même, les traductions sont traitées en utilisant la classe statique JText. On parle ici de “statique” car il ne nécessite pas d'instanciation comme objet avant que ses méthodes ne soient utilisées.

Chaînes de texte simple

La plupart des chaînes de texte peuvent être traduites en utilisant la méthode “_” (trait de soulignement). Par exemple, supposons que votre template contienne le texte anglais “Welcome” qui a besoin d'être traduisible.

<?php
    echo 'Welcome';
?>

Vous remplacez alors la chaîne statique comme ceci :

<?php
    echo JText::_( 'Welcome' );
?>

Cela va amener le système de traduction à rechercher le fichier langue approprié pour le “WELCOME” situé à gauche du signe égal. La recherche n'est pas sensible à la casse. Si cette chaîne de définition de langue est trouvée :

WELCOME=Welcome!

cela affichera ainsi la chaîne “Welcome!” dans le navigateur. Si l'utilisateur passe à la langue allemande, le fichier de définition de langue allemande cherchera “WELCOME” et devrait trouver la chaîne :

WELCOME=Willkommen

ainsi, “Willkommen” sera envoyé au navigateur. Et de plus, si l'utilisateur passe à l'Allemand alors qu'il n'existe pas de fichier langue allemand ou que la chaîne appropriée n'apparaît pas dans le fichier langue allemand, Joomla! retournera la chaîne non traduite “Welcome” au navigateur, tout en conservant sa casse d'origine.