web-dev-qa-db-ja.com

Load_theme_textdomain()をデバッグするにはどうすればいいですか?

私はテーマを翻訳可能にしました。私のtext domainmy_themeであり、私の.poおよび.mo(de_DE.poおよびde_DE.mo)ファイルは私のthemesフォルダーの中のサブフォルダーlanguagesにあります。

私のfunctions.phpに、次のコードを追加しました。

add_action('after_setup_theme', 'my_theme_setup');
function my_theme_setup(){
    load_theme_textdomain('my_theme', get_template_directory() . '/languages');
}

私のバックエンドの言語は「ドイツ語」ですが、翻訳はロードされていません。何か案は?

4
user1706680

load_theme_textdomain()は成功するとTRUEを返し、ファイルが見つからなかった場合はFALSEを返します。デバッグのために以下の変更を試してください。

function my_theme_setup(){
    $path = get_template_directory() . '/languages';
    $result = load_theme_textdomain('my_theme', $path );

    if ( $result )
        return;

   $locale = apply_filters( 'theme_locale', get_locale(), 'my_theme' );
   die( "Could not find $path/$locale.mo." );
}
10
fuxia