El Plugin Multilingüe permite a los administradores de un foro multilingüe crear un entorno rico y comprensible para todos los usuarios y visitantes, incluso si no hablan el idioma predeterminado o mayoritario del foro.
campos opcionales de idioma de interfaz e idioma de contenido al registrarse (próximamente).
Tenga en cuenta
Todas las características anteriores funcionan sobre el sistema de locales existente de Discourse y en conjunto con todas las funciones de ese sistema (ver la explicación más detallada aquí).
Si deseas agregar idiomas de interfaz (‘locales’) a Discourse, la mejor manera de hacerlo es siguiendo los pasos descritos aquí: How to add a new language. También puedes agregar un locale mediante un plugin, como se describe aquí.
La capacidad de hacer esto a través de la interfaz de administración en este plugin solo debe considerarse después de agotar los métodos compatibles con Discourse. Cualquier idioma agregado a Discourse mediante los métodos compatibles con Discourse estará automáticamente disponible para todas las funciones de este plugin.
Este plugin fue posible gracias al apoyo de la Fundación Wikimedia, con especial apoyo de @Elena_Lappen y @icaria36, quienes tuvieron una participación significativa en el diseño del conjunto de características.
Para más discusión sobre el razonamiento detrás de este plugin, consulte:
¡Guau! Has estado ocupado. Buen trabajo, @angus. Espero ver ejemplos de esto en acción. Avísame si necesitas que alguien como yo lo revise y dé comentarios.
Una carencia ha sido la falta de una función que permita al personal mejorar las traducciones de las publicaciones proporcionadas por el plugin de traducción. ¿Eso formará parte de este esfuerzo?
hm. No lo descarto, pero eso probablemente esté más dentro del alcance del plugin de traducción.
Una función algo relacionada que en su día construí para otra cosa es un pequeño icono de contador que aparece para los usuarios cuando la configuración regional que están utilizando recurre a la configuración regional predeterminada porque falta una traducción. Haz clic en el icono y verás:
“Faltan x traducciones para esta página. Ayúdanos a traducirlas aquí: (enlace al Transifex de Discourse).”
Parece que muchos de nuestros temas antiguos están recibiendo la etiqueta de idioma de forma retroactiva, lo cual es deseable, pero solo un puñado hasta ahora. ¿Se ejecutará algún trabajo para aplicar la etiqueta a todas las publicaciones existentes eventualmente? Si no, ¿hay alguna forma de aplicar una etiqueta de idioma a todas las publicaciones existentes? Nuestro sitio ha sido solo en inglés hasta este momento, así que quiero que todas las publicaciones existentes tengan la etiqueta en.
Cuando tienes varios idiomas configurados en los idiomas de contenido, ¿deberías poder filtrar por un idioma individual? Actualmente, cuando hago clic en uno de los idiomas en el menú desplegable, no ocurre nada.
Gracias por tus comentarios, David, y por probar esto. He realizado varias actualizaciones que, entre otras cosas, solucionan los dos problemas que mencionaste anteriormente.
Aún no. Actualmente, solo las publicaciones traducidas por el plugin Traductor recibirán automáticamente una etiqueta de contenido de forma retroactiva (si el plugin de traducción está habilitado y la función de sincronización también lo está).
Puedo agregar un trabajo así, pero necesitará tomar un idioma específico como parámetro y ejecutarse en un ámbito definido. Además de un ámbito de “todo el sitio”, podría hacerlo por categoría o por etiqueta (no de contenido), es decir, aplicar esta etiqueta de contenido a todos los temas en esta categoría o con esta otra etiqueta. ¿Qué te funcionaría mejor?
No, la lista solo pretende mostrarte cuáles son los idiomas de contenido configurados actualmente. ¿Podrías explicarme paso a paso cómo esperas (o te gustaría) que esto se comporte?
Idealmente, me gustaría que la etiqueta en se aplicara a todas las publicaciones existentes que no tengan una etiqueta de idioma. ¿Es eso demasiado amplio? El problema es que si un usuario establece su idioma de contenido, por ejemplo, en inglés y español, solo verá las publicaciones con etiqueta de idioma y no las miles de publicaciones que no tienen etiqueta.
Como hay una lista y se resaltan al pasar el cursor, da la impresión de que son clicables. En ese caso, mi expectativa es que al hacer clic en una de ellas, tus publicaciones se filtren por ese idioma. Creo que podría ser una función útil para filtrar por idioma, pero tampoco es algo que me muera por tener.
Por otro lado, me encantaría tener la opción de mover el botón de idioma. Ya tengo muchos elementos en mi barra de navegación y está empezando a verse abarrotada. Además, el botón resaltado parece fuera de lugar encima del botón de nuevo tema y está obligando a que este último se coloque debajo. Supongo que no es posible moverlo al principio de la barra de navegación, por ejemplo, antes de Últimos? O podría flotar en una esquina como lo tengo en mi página de inicio de WordPress https://naturephotographers.network, o podría ir en el encabezado, similar a la opción del plugin de traducción.
Entiendo tu razonamiento para colocarlo en la barra de navegación, ya que filtras de manera similar a los otros botones, pero la cuestión es que solo lo configurarías una vez y luego lo olvidarías. No es como si filtraras regularmente por diferentes idiomas.
Para mí, este es el comportamiento deseado. Los usuarios no deben ver publicaciones en un idioma extranjero. Si no hay ninguna publicación en su idioma, no deben ver ninguna.
Sin embargo, como opción, sería agradable contar con una función de “etiquetado masivo”.
Estoy de acuerdo. La solución que propuse en Pavilion es que, si la configuración regional predeterminada coincide con uno de los idiomas seleccionados del tema, se muestren todas las publicaciones sin etiquetas. Pero el etiquetado masivo sería la mejor opción.
@angus, no estoy 100 % seguro de si esto está relacionado con tu plugin o con un cambio en el núcleo, pero podría haber un error que he encontrado. Cuando edito una publicación existente, hago algunos cambios e intento guardar, obtengo este error: Ninguna de las etiquetas que seleccionaste se puede usar. No hay etiquetas configuradas excepto la etiqueta en, y número mínimo de etiquetas requeridas en un tema está establecido en 0. ¿Alguna idea?
Me encontré con otro problema hoy, Angus. Anteriormente tenía una etiqueta ig (abreviatura de Instagram) que fue eliminada por el plugin para dar paso al idioma igbo. Supongo que no hay forma de recuperarla, ¿verdad? Intenté desactivar el plugin con la esperanza de que todavía estuviera allí, pero, por desgracia, parece que ya se ha ido para siempre. Sé que este es un riesgo que se corre al probar plugins. Tal vez debas añadir una advertencia indicando que eliminará cualquier etiqueta con el mismo nombre.
¡Dios mío! ¡Eres fantástico!
Quiero decir, realmente te admiro. Aunque también espero que esta publicación no distraiga la atención de la gente de tu fabuloso trabajo.
Solo una nota: David y yo hemos resuelto este problema y restaurado las etiquetas ig existentes.
Si hay un conflicto entre una etiqueta preexistente y una etiqueta de idioma de contenido, el idioma no estará disponible como idioma de contenido hasta que se resuelva el conflicto. Verás esto en tu administración de idiomas.
Estimado Angus, ¿es posible utilizar solo el selector de idioma para los invitados? No necesito usar todas las funciones de este sistema; solo necesito brindar a los invitados la capacidad de cambiar el idioma de la interfaz.
Hemos instalado el plugin, pero ahora ningún contenido es visible para los usuarios, ni siquiera para el personal. Sin embargo, cuando editas una categoría e intentas eliminarla, aparece la siguiente advertencia:
La única forma de acceder a un tema es seguir el enlace en el mensaje de advertencia o conocer la URL del tema. Si accedemos al tema (RIO Paris) y luego agregamos una etiqueta de idioma de contenido, por ejemplo “inglés”, entonces se vuelve visible como se esperaba. Nuestra suposición es que el plugin Multilingüe funciona correctamente. Solo se muestra el contenido asociado a una etiqueta. Sin embargo, resulta engañoso y confuso cuando las personas no pueden ver todos los temas relacionados sin asociarles una etiqueta de idioma. Tenemos miles de temas publicados previamente que son invisibles. ¿Existe una solución para asignarles rápidamente una etiqueta de idioma, ya que en este momento no podemos ver una lista?
Por favor, nos gustaría recibir sus consejos.
Edición: Resolví mi problema de visibilidad etiquetando todos los temas de ciertas categorías según el idioma que debían usar, en Rails:
cd /var/discourse y luego ./launcher enter app
Obtener los IDs de las categorías con rake categories:list
Si una categoría que solo debe contener temas en alemán es la 245, entonces rake tags:bulk_tag_category["de",245]
Obtengo una página en blanco después de ejecutar
./launcher rebuild app
He descubierto que este plugin es la causa. No puedo abrir el sitio ni la parte de administración.
Solo activé el contenido multilingüe, pero no lo configuré.
¿Cómo puedo restablecer la configuración de este plugin en la base de datos?
He desactivado este plugin ahora. Los problemas comenzaron con la desaparición de la lista de plugins en el panel de administración. Después de eso, intenté reconstruir la aplicación. Pero después de la reconstrucción, el sitio no se abría. Ahora se abre, pero con este plugin desactivado.
@angus, ¿puedes verificar tu plugin con una versión reciente de Discourse?
en modo seguro sin plugins no oficiales veo esta página sin la lista de plugins:
En ese momento, ningún modo podía resolver el problema (seguro, sin versiones no oficiales, sin todos) - en todos los modos no veía una lista de complementos instalados en el sistema.