Astuce Utiliser les fonctions mystérieusement nommées _e, _n et __

Vous avez peut-être rencontré ces fonctions au cours de votre carrière dans WordPress. Ceux-ci peuvent être utilisés à des fins de traduction. Voici quelques exemples rapides d'utilisation.


Pourquoi les utiliser?

Le fait est que WordPress peut être utilisé et traduit dans toutes les langues du monde. Si vous souhaitez une mise en page Web capable de gérer plusieurs langues, vous pouvez le faire avec le système de traduction par défaut intégré à WordPress. Vous n'avez même pas besoin d'écrire un code PHP complexe ou un plugin pour cela. Utilisez simplement ces méthodes et créez les fichiers de langue appropriés.


Où les utiliser?

Les emplacements pour utiliser ces fonctions sont les fichiers PHP de thèmes et de plugins. Pour commencer, je recommande de les utiliser uniquement dans des thèmes, mais vous pourrez plus tard les utiliser dans des plugins.


Fichiers Gettext

Pour la traduction de textes, WordPress utilise le framework de traduction gettext. Ces données sont stockées dans des fichiers POT (modèle d'objet portable), PO (objet portable) et MO (objet machine). Vous pouvez créer ces fichiers avec poEdit Open Source et GNU gettext. Les fichiers de langue par défaut pour l’interface WordPress se trouvent dans wp-content dossier. Plus d'informations peuvent être lues dans l'article sur la traduction du Codex WordPress.

… /Wp-content/languages/uk.mo… /wp-content/languages/uk.po

Exemples

_e est utilisé pour un texte simple alors que _n peut être utilisé pour la forme plurielle d'un mot, vous pouvez même définir différentes formes pour différents nombres d'un objet ou d'une chose.

  


Pour les développeurs

Si vous êtes un développeur PHP et souhaitez écrire un plugin ou toute autre chose utile liée à votre projet WordPress, vous pouvez utiliser le __ fonction, qui retourne la version traduite de la chaîne donnée. Cette chaîne retournée peut être intégrée dans le code WordPress de votre choix.

 // retourne la traduction de apple dans une phrase allemande echo "Das ist ein". __("Pomme") . "!";

Références

Donc, la principale différence entre __ et _e est que ce dernier fait écho au résultat de la page Web. __ sert d'alias de la Traduire() une fonction. Ces fonctions peuvent être trouvées dans wp-includes / l10n.php.

Pages de référence pour les fonctions ici:

  • _e
  • _n
  • __