2014-10-07 30 views
0

我試圖在工作中本地化WordPress插件。我創建了必要的.mo.po文件,並嘗試將它們存儲在各個位置,但我無法使本地化工作。我注意到在它指定的Bedrock application.php文件中我應該將語言文件放在app/languages中,但它仍然不起作用。試圖在WordPress的基岩堆棧上本地化插件

我嘗試將我的.mo文件命名爲plugin-en.moen.mo,但沒有成功。

我已經設置了我的WPLANG:define('WPLANG','en');

是否需要插入load_plugin_textdomain()函數?如果是這樣,我會把它放在哪裏?

+1

感興趣:[如何使WordPress插件翻譯準備好?](http://wordpress.stackexchange.com/q/80334/12615) – brasofilo 2014-10-08 06:18:54

回答

0

運行Bedrock的網站將其語言文件存儲在其他目錄中:app/languages。沒有必要將文字域添加到包裝在字符串周圍的_e()__()函數中。

因此,將所有.mo和文件添加到app/languages文件夾的竅門。例如:_e('String-to-be-translated')__('String to be translated')

查看this link瞭解更多信息。

1

如果您的插件名爲myplugin,您的語言文件應該是(例如)myplugin-fr_FR.momyplugin-fr_FR.mo(法語)。 Codex說公約將有語言代碼和國家代碼 - 我不知道是否只有en(不是說,en_US)是造成您的問題。

把它們放在一個名爲languages子目錄,並在主插件文件的東西加載它們像

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

(如果你從一個不同的目錄中的文件加載它們,你需要修改第三個參數)。

+0

我已經完成了所有這些工作,並多次跟隨指南。我想我需要知道的是,如果我使用Bedrock堆棧(使用Composer安裝),我的主要插件文件將會放在哪裏?文件結構不同於典型的WordPress網站。 – JoshieSimmons 2014-10-08 17:52:38