Hoy hablaremos de cómo mostrar las entradas unificadas en multiidioma con Polylang. Esto es importante si, por la razón que sea, consideramos que el sistema multiidioma nos viene bien para las páginas y custom post types, pero no para el apartado de blog y sus entradas.
El problema
Sabemos que Polylang es una excelente herramienta de gestión multiidioma. Por definición, lo que hace es adjudicar una entrada o página a un idioma, y sólo a uno. Después, esa puede vincularse con otras, que serán sus «equivalentes» en otros idiomas. Hasta ahí todo bien.
Puede ocurrir que, en un principio, en la etapa del diseño y elaboración de la web, cuando se creó la web en estructura multiidioma, pensáramos que íbamos a escribir artículos que íbamos a tener traducidos a todos los idiomas que incluimos en la web. Posiblemente al final hemos visto que no; que no nos gustan los resultados de las traducciones automáticas, y que no podemos estar traduciendo todas las entradas que hacemos. Que, finalmente, queremos que todas las entradas de blog estén juntas y las vean todos los que entran a nuestra web, busquen el idioma que busquen. Esto nos ha ocurrido con algunos clientes de mantenimiento de sitios web y de consultoría WordPress.
No existe una fórmula natural y sencilla de mostrar las entradas de forma unificada en multiidioma con Polylang
¿Cómo hacemos esto? Porque recordaremos que hemos dicho que Polylang adjudica cada entrada a uno y sólo a uno de los idiomas. De esa forma, quienes entren al blog en otro idioma no encontrarán las entradas que no se hayan adjudicado a ese idioma. Y es que no hay una «fórmula mixta» reconocida para gestionar esto. No hay una fórmula para mostrar entradas unificadas en multiidioma con Polylang de una forma natural y elegible.
Si, por ejemplo, publicamos en Castellano, pero en nuestro sitio web tenemos también Inglés y Francés, quienes entren al blog Inglés ó Francés no verán esas entradas. Y si, esporádicamente, publicamos en Inglés por ejemplo, sólo los que busquen nuestra web en Inglés verán esas entradas. Puede ser hasta cierto punto lógico. Pero, ¿y si queremos que todos vean todas las entradas, porque queremos que vean actividad y movimiento en nuestro blog? ¿Y si se trata de que trabajamos, además de Castellano, en Euskera o Catalán, y consideramos que nuestros potenciales lectores pueden acceder a esas entradas en Castellano, sin que nos suponga tanto trabajo?
La solución: engañaremos un poco a Polylang
La solución a esto pasa por «engañar» a Polylang. Primero, todas las entradas que publiquemos, sean en el idioma que sean, le diremos que son en el idioma que establezcamos como principal. Esto nos sirve para entradas de nueva creación; pero en las ya creadas también podemos modificar el idioma que tienen adjudicado. De esa forma, ya todas las entradas aparecerán juntas, «bajo el mismo blog». En la URL del blog de uno de los idiomas. En el resto no aparecerá ninguna.
¿Y los usuarios de los otros idiomas?
A los usuarios de los otros idiomas, les pondremos, no el enlace al blog que nos propone Polylang, sino el enlace del idioma principal. Es decir: Al elegir un elemento a añadir al menú de esos otros idiomas, vamos a hacerlo visualizando sólo las URLs de nuestro idioma principal (eso lo vemos en la barra superior de nuestro wordpress).
Buscamos la página Blog… y sólo nos mostrará la del idioma principal, no sus equivalentes. La añadimos. Si tenemos que cambiar la etiqueta del nombre, lo hacemos.
¿El inconveniente de esta solución?
El inconveniente de esta solución es que los usuarios que vayan al blog, si son de esos otros idiomas que no hemos definido como principales, van a salirse de su idioma y van a entrar en el idioma principal. Es importante que hayamos implementado opciones claras de permutar entre idiomas de forma fácil en nuestro sitio web.
Entradas unificadas en multiidioma con Polylang: Resumen y valoración
Polylang es una excelente herramienta para tener nuestro sitio web en varios idiomas. Además, es un plugin gratuito, con una gran comunidad de desarrollo y por consiguiente, con un gran respaldo. Es, por ello, una buena opción.
En muchos casos (algunos los conocemos personalmente), lo que era un afán inicial de publicar todo en los idiomas elegidos para el sitio, acaba quedándose en querer utilizar las opciones multiidioma para las páginas estáticas y secciones interiores fijas de la web; pero no para el blog en continuo desarrollo de contenido. Desafortunadamente, Polylang no nos da una opción para configurarlo así, de forma natural, y decirle algo como «mira Polylang; aplica tus criterios sólo a las páginas y los Custom Post Types que tenemos, pero no a las entradas del blog que estamos haciendo, porque no tenemos tiempo ni posibilidades de hacer y publicar buenas traducciones de todos nuestros contenidos».
Llegados ahí, sólo nos queda la opción de «engañar a Polylang» diciéndole que todos nuestros artículos han sido casualmente escritos en el idioma principal del sitio web (aunque no sea realmente así). Y en el menú de los otros idiomas no habrá enlaces al blog en esos idiomas, sino enlaces al blog del idioma principal.
El inconveniente será que esos visitantes de otros idiomas, al visitar el blog, se salen de su idioma para ir al idioma principal. Por ello tenemos que implementar (siempre, en realidad) buenas y fáciles fórmulas para permutar entre idiomas en todo momento. Pero este inconveniente se ve compensado largamente por haber conseguido mostrar entradas unificadas en multiidioma con Polylang. Fácil, ¿verdad? Si, pese a no ser muy difícil, prefieres que te ayudemos con tu web con nuestro servicio de consultoría para esta cuestión o para otras similares, contacta con nosotros.