1

WordPress サイトに qTranslate 多言語プラグインをインストールしています。このサイトには以前からのカスタム プラグインがあり、これが事態を複雑にしています。この質問は、qTranslate が Gettext でマークされた文字列 (_eなど) の変換に失敗するいくつかのケースに関するものです。これらの場合、次のように、Gettext 呼び出しの前の行の近くで、qTranslate 言語と WordPress ロケールを正しく検証できます。

<pre>lang: <?php echo qtrans_getLanguage(); ?></pre>
<p class="message"><?php _e('Cart is empty.', 'myplugin'); ?></p>

文字列は、現在の言語に関係なく、qTranslate でデフォルトに設定された言語で出力されます。スウェーデン語がデフォルト言語である場合の典型的な出力は次のとおりです。

lang: en

Varukorgen är tom.

この要約から何が間違っているのか正確にはわからないことを理解しています。しかし、この動作の原因として考えられることを提案して、私を助けてもらえますか?

ヒント: Ajax が関与している可能性がありますが、正直なところ、それが本当かどうかは少しわかりません。

4

1 に答える 1

1

呼び出しはload_plugin_textdomaininit 関数内にある必要があるため、代わりに

load_plugin_textdomain('myplugin', false, dirname(plugin_basename(__FILE__))
    . '/languages/');

やった

function myplugin_init() {
    load_plugin_textdomain('myplugin', false, dirname(plugin_basename(__FILE__))
        . '/languages/');
}
add_action( 'init', 'myplugin_init' );

そしてそれはうまくいきました。

于 2013-11-03T11:23:44.070 に答える