Aujourd'hui, je travaille sur un thème pour mieux comprendre WordPress et les modèles. J'ai découvert ceci:
<?php
printf(
__('Designed by %s', 'Anyword'),
'<a href="http://www.example.com">Blub</a>'
);
?>
Je sais que cela montre "Designed by Blub" (Où Blub est lié) Mais que signifie "__()
" ou pourquoi existe-t-il un insert de chaîne? A quoi sert le Anyword?
Quelqu'un peut-il m'expliquer exactement cette ligne?
Il est utilisé pour traduire le texte .
Le deuxième argument est un type d'espace de nom (appelé domaine ici) pour récupérer la traduction (par exemple, à partir d'un fichier dédié ou autre chose).
Donc, Anyword
ici, devrait être le type derrière le modèle, ou la société ou quoi que ce soit qui puisse être un domaine/un espace de noms.
modifier:
La doc de wordpress donne plus d'explications sur la manière de internationaliser un plugin :
Ajoutez ceci au code du plug-in pour vous assurer que le ou les fichiers de langue sont chargés:
load_plugin_textdomain('your-unique-name', false, basename( dirname( __FILE__ ) ) . '/languages' );
Pour récupérer une chaîne, utilisez simplement __('String name','your-unique-name');
pour renvoyer la traduction ou _e('String name','your-unique-name');
pour faire écho à la traduction. Les traductions iront ensuite dans le dossier/languages de votre plugin.
Pour votre plugin/thème, le your-unique-name
semble être Anyword
.