如何通過default.po文件
例如
對於CakePHP的庫文件的翻譯添加到 - 個名字
- 一天的名字
- timeAgoInWords.po文件
我嘗試手動添加字符串到default.po
但每次我從default.pot更新它(使用poedit)
字符串已經消失。
請幫我解決這個問題
將罰款通過使用單獨.po文件
如何通過default.po文件
例如
對於CakePHP的庫文件的翻譯添加到 - 個名字
- 一天的名字
- timeAgoInWords.po文件
我嘗試手動添加字符串到default.po
但每次我從default.pot更新它(使用poedit)
字符串已經消失。
請幫我解決這個問題
將罰款通過使用單獨.po文件
我解決這個問題
- 創建/app/views/dummy.ctp
- 通過從應對蛋糕\庫\圖\助手翻譯複製\ time.ctp到dummy.ctp
- 和蛋糕國際化將將翻譯添加到default.pot
你可以看到相關的字符串timeAgoInWords
at the end of TimeHelper::timeAgoInWords
找到解決方案。他們只是沿着'year'
,'years'
,'month'
,'months'
等行的正常翻譯字符串,只需將這些翻譯放入通用域.po文件即可。
有一種特殊情況,可能會打印完整日期字符串,如'on 18/2/09'
。 「關於」通過本地化字符串'on %s'
是局部的,但需要傳遞給timeAgoInWords
函數的日期格式:
$this->Time->timeAgoInWords($time, array('format' => __('Y-m-d', true)));
月份名稱follow the same schema,只需添加翻譯'January'
,'February'
等在一般域名翻譯文件。不太確定Cake輸出日哪些地方需要翻譯。請詳細說明。
這對翻譯是正確的,但是如何將它們放到單獨的文件中。我知道我可以使用域解決方案來製作單獨的文件 但它不是編輯cake \ libs \ view \ helpers \ time.php到添加域 – baur79 2010-12-17 07:06:44
@baur的方式啊,現在我明白你在問什麼了。是的,沒有編輯或覆蓋Cake方法,恐怕沒有真正的解決方案。您需要更加小心地將新的翻譯合併到您現有的文件中: -/ – deceze 2010-12-17 07:18:28
謝謝,我也找不到其他解決方案,但作爲您的。 – baur79 2010-12-17 07:27:15