itaeng

Preparare i file .po per tradurre un sito fatto in cakephp

Recentemente mi è capitato di dover tradurre tutte le stringhe di un sito scritto in CakePHP, ma solo in inglese. Un autentico lavoraccio visto che il sito aveva una miriade di pagine e di funzionalità.

Dalla mia c'era il fatto, e chi usa CakePHP lo sa, che gli strumenti che questo fantasmagorico framework offre sono infiniti.

Fortunatamente il sito era già predisposto per la traduzione, quindi bastava preparare il file .po ed inserirvi le traduzioni. Lo strumento di cui mi sono servito, anche questa volta, è la potentissima console di CakePHP, che con il comando

/var/www/ilmiosito/app$ ./Console/cake i18n

ha cercato (da sola!!) tutte le stringhe traducibili in tutte le sottodirectory dell'applicazione "ilmiosito" (quelle scritte in modo simile a __('Traducimi', true), per intenderci) ed ha salvato il tutto, comodamente, nella directory ./app/Locale nella forma di un file con sintassi gettext, cioè qualcosa di simile a questo:

msgid "Translate me"
msgstr "Traducimi"

... naturalmente, inserire la traduzione nella stringa msgstr rimane compito di chi scrive, non tutto è così automatizzato :)

Comodo, no?