Traduzindo as mensagens do componente Zend Validate
Começamos a pouco tempo um projeto para traduzir e manter um repositório com as mensagens de tradução do Zend Validate. O projeto que já conta com 3 colaboradores alem de mim, já percorreu uma boa trilha (ainda há muito o que fazer). Vou mostrar aqui como usar as mensagens traduzidas do nosso repositório.
O primeiro passo, obvio, é fazer o download dos arquivos no github. Após isso, no seu bootstrap, adicione um método _initTranslate e no escopo dele instancie o Zend Translate passando por parâmetro o arquivo baixando do repositório, após isso defina sua instância do Zend Translate como padrão para o componente Zend_Validate_Abstract, como no exemplo abaixo:
{
public function _initTranslate()
{
$translate = new Zend_Translate(
‘gettext’,
APPLICATION_PATH . ‘/../data/translate/validate/pt_br.mo’
);
Zend_Validate_Abstract::setDefaultTranslator($translate);
}
}
Prontinho, agora todas as suas mensagens de validação estarão em português.
Ah, se você quiser colaborar com o projeto, entre em contato, toda ajuda é sempre bem vinda.
Buenas! amigo eu uso o wamp, será que coloquei no local certo?
C:\php5\pear\Zend\Translate\validate
renomiei a pasta diegoholiveira-Zend-Validate—Messages-pt-br-6622570 para validate
Valeu por todos os tutoriais! Esta sendo uma boa referência para mim…
Você não irá colocar os arquivos de tradução dentro do Zend Framework. Você deve usa-los dentro da sua aplicação. Releia o post e veja minha explicação sobre como usar as traduções.
Abraços.
Olá Diego,
parabens pela iniciativa.
Implementei conforme suas dicas, porem quando rodo a aplicacao, me retorna o seguinte erro:
Fatal error: Uncaught exception ‘Zend_Translate_Exception’ with message ”/usr/local/www/data/docs/xxx.com.br/PlusCarWeb/application/../data/translate/validate/pt_BR.mo’ is not a gettext file’
baixei o arquivo, coloquei naquele caminho, coloquei a funcao do translate no bootstrap, tudo aparentemente certo.
agradeço desde já.