Wordpress - BBpressCon cada version nueva de WordPress en la blogosfera hispana lo primero que se busca es la traducción a nuestro idioma y muchas veces se da que la primera version de la traducción es en español de españa (castellano) y luego sale la version en Latin, esto en la blogosfera talvez no se vea mal pero se ha dado el caso como fue con Halo 2 que hubo una enorme discución entorno al tema, es cuestion de preferencias.

Lo mismo sucede con BBPress el sistema de Foros y hermanito de WordPress, actualmente la version de BBPress es “Brubeck” version 0.9.0.2 y ya cuenta con una traducción en español (castellano).

Descargar traducción de BBPress a Español

Como ayudar al desarrollo de WordPress y BBPress?

Es simple y claro, no necesitamos ser programadores para ayudar a un proyecto Open Source como lo es WP o BB, podemos apoyar con la traducción despues de todo no todos los Bloggers saben programar aunque durante esta etapa siempre se terminan metiendo en alguna cosilla de programación ya sea en funcionalidad o diseños (CSS).

Ambos sistemas utilizan un archivo que no es XML ni PHP, son archivos .mo los cuales son archivos compilados de sus fuentes archivos .po, estos ultimos son los mismos que podemos editar y apartir de los cuales podemos crear un proyecto de traducción y posteriormente compartirlo con la comunidad.

Aqui les dejo una lista de Editores de archivos .mo:

Para saber como utilizar estos softwares les recomiendo lean esta mini guia haciendo click aqui.

Que funcion tienen estos archivo .mo?

Bien estos archivos corren un proceso que buscan una linea exacta de nuestro codigo un texto como el siguiente:

_e(‘Pages’)

Este lo reemplaza por lo que hayas asignado previamente en tu archivo de traducción, en este caso seria “Paginas”, ejemplo:

#: wp-comments-post.php:13  msgid "Sorry, comments are closed for this item."  msgstr ""

En el ejemplo anterior se hizo que la traducción busque reemplaze el texto de la variable msgid por el texto de la variable msgstr en la linea 13 del archivo wp-comments-post.php.

#: archivo.php:linea
msgid “texto original
msgstr “texto traducido

Este tipo de sistemas de traducción se puede aplicar a cualquier sistema no necesariamente programado en PHP, incluso se utiliza para traducir softwares de escritorio.

Como implementarlo en tu sistema web, programado en PHP usando gettext?

PHP tiene sus propias funciones gettext que nos ayudan a hacer esta implementación pero esta no es la mejor opcion, en el siguiente ejemplo utilizaremos PHP gettext.

Es muy sencillo utilizarlo.

Paso 1, incluir estos archivos estos deben ser incluidos al principio de nuestro script:

include('php-gettext-1.0.7/streams.php');  include('php-gettext-1.0.7/gettext.php');

Paso 2, incluimos nuestro archivo de traducción .mo:

if (file_exists($_SESSION['languaje'] . '.mo')) {       $gettext_tables = new gettext_reader(            new CachedFileReader($_SESSION['language'] . '.mo')       );       $gettext_tables->load_tables();  }

Paso 3, incluimos la siguiente función en nuestro sistema:

function _e($txt) {      global $gettext_tables;        if (is_null($gettext_tables)) return $txt;      else return $gettext_tables->translate($txt);  }

La ultima funcion es la que se encargara de traducir nuestro sistema comparando las los textos enviados a esta función con la tabla de traducción de nuestro archivo .mo para traducir nuestro sistema.

Espero esto les ayude en el desarrollo de sus aplicaciones traduciendo en PHP con archivos .mo como WordPress y BBPress hace.