WordPress Multi-idioma

Primero de todo decir que WordPress es una fantástica plataforma con la que yo me siento muy a gusto trabajando pero pese a estar pensada para ser traducida no lo está para que su contenido “coexista” en varios idiomas. Ésta página lo explica muy bien.

Qtranslate

Qtranslate es un plugin que convierte WordPress en un CMS multiidioma y que escribió QianQin hace poco más de 4 años. Qtranslate a día de hoy es un plugin desactualizado, pues está escrito para la rama 2.0 de WordPress y QianQin paró su desarrollo en la rama 2 del plugin.

A pesar de ello y teniendo en cuenta que hace 2 años que el plugin no sufre mejora alguna, a día de hoy sigue funcionando pues su autor lo va poniendo al día con cada release de WordPress para que así sea. Hubo un amago de una versión 3.0 ( puedes ver el branch en svn ) pero quedó en eso: el planteamiento inicial de una reestructuración completa del plugin. Esto fue debido a la salida de WordPress 3.0 y las mejoras que traía en cuanto a escalabilidad.

Soluciones actuales

Llegado a este punto debes saber que hoy en día tienes principalmente 3 opciones para implementar multi-idioma en WordPress: Qtranslate, WPML y Multilingualpress.

  • Como ya he mencionado antes Qtranslate está desactualizado pero a mi me gusta mucho como resuelve la usabilidad y la UI (puedes ver más razones en éste artículo) y por eso lo sigo usando  para mis proyectos con algun añadido: Qtranslate Meta y QtranslateSlug (éste ultimo de cosecha propia, más info aquí).
  • WPML es el rey de la casa, tiene todas las opciones habidas y por haber y pese a ser de pago mucha gente se decanta por él, pero si eres desarrollador enseguida te darás cuenta que hay muchas cosas que no necesitas y que no puedes deshacerte de ellas porque es todo un pack “autoconfigurable” (más info aquí).
  • Multilingualpress es un reciente plugin pensado para WordPress Multisite y lo que hace es gestionar el contenido por separado y enlazarlo entre sí. Entonces cada sitio es un idioma, de manera que el contenido queda totalmente separado pero bajo una misma administración cortesía del Multisite. De esa manera resuelve muy inteligentemente el tema SEO pero bajo mi opinión tiene algunas carencias para mi importantes como por ejemplo la descentralización de ciertas funcionalidades que ofrecen otros plugins (imagina una tienda en varios idiomas como Jigoshop, tendrías n tiendas, n veces los productos, n veces los pedidos, etc ), también cosas más básicas como por ejemplo la librería repetida. Igualmente el proyecto avanza y para según que casos puede ser una opción muy recomendable.

Mi plugin Multi-idioma ideal

Para mi el plugin ideal multi-idioma para WordPress debería cumplir:

  • fácil implementación: instalar, activar y configurar lo mínimo.
  • que consuma pocos recursos, haciendo buen uso de querys optimizadas y cache.
  • prescindir de cualquier tipo de “hack” (desde la versión 3.0 ya no hay excusa para desarrollar sin seguir las pautas de la API).
  • algunas opciones avanzadas de serie como el mapeado de dominio por idioma: inglés > domain.com, francés > domain.fr
  • que pueda coexistir de forma nativa con otros plugins de alto rendimiento como por ejemplo tiendas virtuales.
  • que a nivel desarrollador pueda hacer y deshacer a mi gusto, con hooks en puntos clave y bien documentado. Por supuesto escalable a desarrollo de terceros.
  • preparado para multisite. Por ejemplo 1 instalación = 3 sitios: 1. un multiioma ( 3 idiomas), 2.un site normal, 3.otro multiidioma ( 2 idiomas ). Por supuesto cada site con su propio mapeado de dominio (Domain Mapping).

Más o menos ésto es lo que planteaba Qian Qin en el desarrollo de Qtranslate 3.0 (puedes verlo aquí). Tras ver que después de un año el desarrollo quedó estancado, me propuse reactivarlo primero como commiter y después creando mi propio fork para continuar la rama. Pues bien, después de intentar adoptar la estructura que Qian Qin planteó para la rama 3.0, he decidido cambiar el planteamiento ligeramente para que el plugin pueda cumplir con los puntos arriba mencionados. Así que he iniciado el desarrollo de cero, adoptando ciertas ideas estructurales de Qtranslate como la UI en la administración, pero haciendo uso de metas y queries personalizadas para guardar el contenido en vez de separarlo/juntarlo para mostrar/guardar. De esta manera espero conseguir mayor rendimiento e integración con otros plugins.

Nota: Si usaste alguna vez Qtranslate o te interesa el tema iré comentando la evolución de éste plugin aquí y en Twitter.

Advertisements

10 thoughts on “WordPress Multi-idioma

  1. Hola Carlos,

    Quiero agradecerte todo lo que estas haciendo en este plugin.

    No se como puedo ayudar, no soy informatico y menos desarrollador, quizas por eso personas como yo te necesitamos..

    Muchas gracias y mucho animo.

    • Hola,

      de momento tengo parado el desarrollo porque posiblemente haga un cambio de enfoque importante.

      La idea es lanzar una primera release y abrir el desarrollo a un equipo de developers que evolucionen el proyecto según las necesidades de los usuarios. Pero para llegar ahí primero hay que terminar el desarrollo inicial que se encuentra a “medio camino”, el canvio de enfoque vendría a ser como monetizar esta primera release de una manera no “intrusiva” para los usuarios ya que el proyecto deberia seguir siendo opensource. Lo que estoy estudiando hasta ahora es el cómo, hay varias vias abiertas y en cuanto sepa como seguir lo anunciaré por aqui.

      Gracias por el interés.
      C.

    • Hola, estoy desarrollando un plugin nuevo de cero siguiendo las pautas aquí descritas. Aun esta en desarrollo, cuando tenga un poco de consistencia y llegue a alpha craré el repo en github, no puedo dar fechas todabia pero si me gustaría que entraran más desarrolladores al proyecto entonces.
      Garcias por el interés.
      C.

      • Pues cuando lo subas a github si quieres avisame por mail e intento ayudarte en lo que pueda (imagino que puedes ver mi correo electrónico en los comentarios).

        Saludos y gracias a ti por el trabajo.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s