Ben aynı sorunu geldi.
Örneğin i var
php
//Gives FORM_HEADER_ADD or FORM_HEADER_EDIT
echo $this->translate('FORM_HEADER_' . strtoupper($this->data));
I poEdit ile senkronize zaman bulacaktır 'FORM_HEADER_' kod i (oluşturulan) sahip bir tanımlayıcı değil ki.
So i had to fix the problem my giving Poedit full identifiers i solved that by doing the following php
echo ($this->data === 'add') ? $this->translate('FORM_HEADER_ADD') : $this->translate('FORM_HEADER_EDIT');
GÜNCELLEME!
Ben bu sorunun içine bakarak tuttu. Ve ben şu anda kaynağından ithal vazgeçti. I daha iyi bir çözüm bulana kadar bu i devam nasıl
- Uygulamayı kurmak ve mümkün olduğunca çok statik tanımlayıcılar kullanın.
Çevrilmemiş (dinamik) tanımlayıcılar günlüğünü etkinleştirme
protected function _initMyTranslate(){
$date = new Zend_Date();
$fileName = sprintf('/../logs/translation_%1$s.log', $date->toString('dd-MM'));
$writer = new Zend_Log_Writer_Stream(APPLICATION_PATH . $fileName);
$log = new Zend_Log($writer);
// get the translate resource from the ini file and fire it up
$resource = $this->getPluginResource('translate');
$translate = $resource->getTranslate();
// add the log to the translate
$translate->setOptions(
array(
'log' => $log,
'logUntranslated' => true
)
);
// return the translate to get it in the registry and so on
return $translate;
}
Kaynağıyla eşitlenecek ve bulunan dizeleri çevirmek için poEdit kullanın.
- Test / hata ayıklama fazında çevrilmemiş dizeleri için günlüğünü denetleyin.
. Po dosyasına çevrilmemiş dizeleri ekleyin.
msgid "IDENTIFIER"
msgstr "TRANSLATION STRING"
Açık po dosyası ve mo dosyası (KAYNAK VEYA TÜM KAYIP OLDUĞU İLE SYNC YAPMAYIN) oluşturmak için kaydedin.
GÜNCELLEME 2.
Ben şimdi bir metin editörü (gedit / notepad) kullanılarak, benim manuel tanımlayıcıları için ayrı bir dosya kullanın. Şimdi ben iki dosya var:
- Otomatik denilen poEdit. Po tarafından oluşturulan
- _manual.po denilen elle editted dosya
i benim dil dizindeki bütün dosyalar için tarama application.ini çevirmek yapılandırılmış
resources.translate.adapter = gettext
resources.translate.content = APPLICATION_PATH "/../library/languages/"
resources.translate.locale = auto ;use en to force english or nl for dutch..etc
resources.translate.scan = directory
resources.translate.options.disableNotices = false
Eğer poEdit başka bir dile çevirmek istiyorsanız dosyası yapmak -> POT dosyasından yeni katalog, ve elle eklenen dizeleri çeviri başlar.