2011-06-09 54 views
5

我正在開發一個CakePHP插件,它應該支持多種語言。 i18n本地化的程序記錄在here,但插件沒有明確涉及。下面的這個結構應該工作嗎?因爲目前它不適合我,但我可能會忽略某些東西。如何本地化CakePHP插件?

/myapp/ 
    /plugins/ 
    /myplugin/ 
     /locale/ 
     default.pot 
     /nld/ 
      /LC_MESSAGES/ 
      default.mo 
      default.po 

,並呼籲像這樣在插件控制器翻譯:

Configure::write('Config.language', 'nld'); 

在我的插件觀看定位功能的格式如下:

__('MyPluginName', 'MyDefaultString') 

一些介紹CakePHP的帖子和插件的本地化提到,所有的語言環境應該進入/myapp/locale/,而不是插件目錄,但不會違反模塊化的目的ugin結構?我讀過的參賽作品從2008年開始(例如this one),所以我希望現在不再這樣了。

任何人都可以提供一些關於本地化Cake插件的更多細節,也許甚至是一步一步的教程?

回答

1

Plugin development tips and tricks文章請看:

本地化插件的處理 好,你可以簡單地通過 使用它爲您的PO或MO 文件給人一種插件名稱。

+0

謝謝!我遵循那篇文章的方向,但它仍然沒有奏效。原來我使用了錯誤的語言代碼,它應該是「dut」而不是「nld」。這是我沒有考慮過的一件事。 – mensch 2011-06-14 15:29:30

+1

它可能沒有在過去作爲參考: 票務參考: http://code.google.com/p/lilblogs/source/browse/wiki/LocalizeHowTo.wiki?r=31 https:/ /groups.google.com/forum/#!topic/croogo/Dn8zqBu_1QU[1-25] – snowflake 2012-08-14 16:14:35