尽管设置了语言,但没有q翻译

时间:2013-11-02 18:33:33

标签: wordpress qtranslate

我正在使用在WordPress网站上安装qTranslate多语言插件。该网站有一个自定义插件,从而使事情复杂化。这个问题涉及qTranslate无法翻译Gettext标记字符串(_e等)的一些情况。在这些情况下,我可以正确验证qTranslate语言和WordPress语言环境,就像Gettext调用之前的行一样,如下所示:

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

无论当前语言如何,字符串都将以qTranslate中默认设置的语言输出。所以这是典型的输出,其中瑞典语是默认语言:

  

lang: en

     

Varukorgenärtom。

据我所知,你无法从这个摘要中看出到底出了什么问题。但你可以通过建议可能导致这种行为的原因来帮助我吗?

提示:Ajax可能会涉及,但说实话,我有点困惑,看看是否真的如此。

1 个答案:

答案 0 :(得分:1)

load_plugin_textdomain调用应该在init函数中,因此不是

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' );

并且有效。