Puede resolver este problema de diferentes maneras:
Extienda Zend_Translate_Adapter para crear el suyo propio. Todos los adaptadores nuevos solo son responsables de obtener las traducciones de la fuente. Es decir, solo necesitaría obtener las traducciones de la base de datos. Mire otros adaptadores y vea cómo se implementan.
Obtenga los datos de la base de datos y páselos a Zend_Translate_Adapter_Array
Utilice Zend_Translate_Adapter_Csv o Ini. Como habría más lectura de lo escrito en las traducciones, esta solución reduciría el número de consultas a la base de datos. Cuando el cliente agrega un nuevo idioma o cambia uno existente, simplemente escríbalo en un archivo, no en la base de datos.
Si decide ir con el adaptador de base de datos, tal vez podría "etiquetar" de alguna manera las traducciones, de modo que en la página de inicio obtenga solo las traducciones para la página de inicio, en la página de contacto solo las traducciones para la página de contacto...
¡HTH!