2017-08-05 17 views
1

私はカスタムWordpressのプラグインに取り組んでいますが、私はそれをマルチランニングにすることはできません。Wordpress Plugin翻訳 - load_plugin_textdomain

メイン言語の.moファイルは正しく読み込まれますが、WPMLを使用して言語を切り替えると、メイン言語(この場合はドイツ語)の翻訳が常に表示されます。だから私が英語になっても、ドイツ語の翻訳はまだ表示されています。それは、すでにドイツ語の翻訳をロードして、ファイル.moという

function mm_jobs_plugins_loaded() { 
     load_plugin_textdomain('mm-jobs', false, dirname(plugin_basename(__FILE__)) . '/languages/'); 
    } 
    add_action('plugins_loaded', 'mm_jobs_plugins_loaded', 0); 

が正しい:ヘッダー内の

/* 
Plugin Name: MM Jobs 
Plugin URI: http://example.com/ 
Description: Custom Jobs Plugin to create new Jobs 
Version: 1.3.84 
Author: Jekey 
Author URI: http://example.com/ 
Text Domain: mm-jobs 
Domain Path: /languages 
*/ 

その後、

は、ここに私のコードです。 名前:mm-jobs-en_US.moまたはmm-jobs-de_DE.mo/plugins/mm-jobs/languages/

問題の原因は何ですか?

答えて

1

同じ問題が発生した場合。私は持っていた

get_plugin_data(__FILE__); 

私のコードです。これにより、textdomainをロードするwp_core関数が実行され、en_US.moがde_DE.moによってオーバーライドされました。

get_plugin_data()が間違ったlang-fileを使用した理由がわかりません。それは、関数を使用するさまざまなプラグインに適したものを選んだようです。