Comment enregistrer une traduction d'un plugin dans “Localisation CodeStyling”?

4

Bonjour, je traduisais l’un de mes plugins dans "CodeStyling Localization". lorsque je mets à jour mon plugin, ma traduction est effacée. Y a-t-il un moyen de le trouver? Et comment puis-je sauvegarder ma traduction (je ne veux pas perdre mon temps la prochaine fois:))

    
posée mahdiar 17.05.2012 - 04:59

1 réponse

6

Vous devriez déplacer le fichier po- et mo-avec la traduction de votre plugin en dehors du répertoire de votre plugin. Chaque fois que vous mettez à jour votre plug-in, vos fichiers de plug-in sont remplacés, ce qui entraîne la suppression de tout fichier ne faisant pas partie du package de plug-in par défaut. (Si vous traduisez votre propre plug-in, vous pouvez également ajouter les fichiers de traduction directement dans votre référentiel de plug-ins.)

Comment déplacer des fichiers de traduction personnalisés en dehors du répertoire du plugin? Dans votre code de plugin, ajoutez une méthode comme celle-ci au init hook:

public function load_plugin_textdomain()
{
    $domain = 'my-plugin';
    $locale = apply_filters('plugin_locale', get_locale(), $domain);

    load_textdomain($domain, WP_LANG_DIR.'/my-plugin/'.$domain.'-'.$locale.'.mo');
    load_plugin_textdomain($domain, FALSE, dirname(plugin_basename(__FILE__)).'/languages/');
}

Le code ci-dessus recherche d'abord un fichier de traduction dans WP_LANG_DIR , qui se trouve dans wp-content/languages/ par défaut. La mise en place de vos fichiers de traduction personnalisés est sans danger pour les mises à niveau.

En outre, en utilisant le hook approprié et les fonctions permettant de charger les traductions de votre plugin, vous autorisez les utilisateurs à s’inscrire au processus de chargement de la langue de votre plugin, ce qui leur donne une grande flexibilité pour charger les fichiers de langue où ils le souhaitent. .

J'ai écrit un article plus détaillé sur ceci sur mon blog.

    
réponse donnée Geert 17.05.2012 - 05:35

Lire d'autres questions sur les étiquettes