Ajouter/Remplacer du texte dans un module

On peut parfois avoir besoin de changer des termes ou des expressions ou d'en ajouter dans un module. Le problème majeur est que cette modification sera "réinitialisée" à la mise à jour suivante de PHPBoost, si le terme que vous avez modifié est impacté par cette mise à jour.

Voici comment procéder pour éviter ce problème :

1 - Créer un fichier de langue custom.php dans le dossier lang/french (je mets custom, mais ça peut être ce que l'on veut) + faire pareil dans english si c'est nécessaire.
Dans ce fichier, j'ajoute tou(te)s les mots/expressions dont je vais avoir besoin, par exemple :

$lang['mon.texte'] = 'Mon texte';


2 - Copier le fichier tpl, qui va être modifié, dans le thème.
Modifier le tpl en remplaçant la variable de langue par :

${Langloader::get_message('mon.texte', 'custom')}


Exemple : remplacer le mot "groupe" par "fonction" sous l'avatar dans le forum
lang/french/custom.php :
$lang['role'] = 'Fonction';

templates/MonTheme/modules/forum/forum_membermsg.tpl :
ligne 47 (pour le thème Base) 
remplacer
{list.usergroups.L_USER_GROUP}
par
${Langloader::get_message('role', 'custom')}


En apparence, il y a plus de manipulations que simplement remplacer le terme dans son fichier de langue, mais quelles que soient les mises à jour, je ne suis plus impacté et mon fichier custom.php étant créé, je peux y ajouter autant de ligne que je veux, cet unique fichier étant valable/utile pour n'importe quel module.