¿Cómo se pueden localizar (multilingüizar) las insignias y los grupos?

¿Cómo se pueden localizar (hacer multilingües) las insignias y los grupos? Durante la configuración, noté que los títulos de las insignias y los grupos no cambian con el idioma del tema. ¿Cómo puedo hacer que las insignias y los grupos sigan el cambio de tema?

3 Me gusta

La capacidad de localizar insignias y grupos personalizados para un sitio multilingüe aún no existe; por el momento, solo se pueden localizar publicaciones, categorías y etiquetas.

De acuerdo, gracias. Pero ¿por qué las insignias en este sitio web (meta.discourse.org) cambian de idioma junto con el tema? ¿Es causado por una función de traducción? Sugiero que el equipo oficial agregue configuraciones de personalización multilingües para insignias, grupos y etiquetas; de lo contrario, los usuarios multilingües no podrán comprender el contenido de las insignias, los grupos y las etiquetas.

1 me gusta

Hay algunas insignias predefinidas en cada sitio que están internacionalizadas (i18n) a través de Crowdin.

Las insignias personalizadas almacenan el nombre/descripción como texto plano en la base de datos. Cuando se llama a I18n.t (función de internacionalización) con una clave como badges.my_custom_badge.name, no hay una traducción coincidente, por lo que recurre al valor almacenado en la base de datos: el mismo texto para todas las configuraciones regionales.

Existe una solución alternativa por la cual los administradores pueden agregar manualmente traducciones para las claves de insignias personalizadas por configuración regional.

Puedes personalizar los textos de tu sitio en \u003cyour site\u003e/admin/customize/site_texts.


Algunos pasos concretos para ti

  1. Crea la insignia
  • Ve a /admin/badges -\u003e Nueva Insignia
  • Establece el nombre, la descripción, el ícono, etc., como es habitual
  1. Encuentra la clave i18n
  • El patrón de clave es badges.{snake_case_name}.name
  • El snake_case_name es el nombre de la insignia en minúsculas con los espacios reemplazados por guiones bajos
  • Así que “Pokémon Master” -\u003e badges.pokémon_master.name
  1. Agrega las anulaciones de traducción
  • Ve a /admin/customize/site_texts
  • Busca badges.pokémon_master
  • Verás claves como:
    • badges.pokémon_master.name
    • badges.pokémon_master.description
    • badges.pokémon_master.long_description
  • Cambia a la configuración regional de destino (por ejemplo, 简体中文), haz clic en la clave e introduce el texto traducido
  1. Repite por configuración regional
  • Cambia la configuración regional en el menú desplegable, añade traducciones para cada idioma que necesites
    • .name - título de la insignia
    • .description - descripción corta que se muestra en las tarjetas de insignia
    • .long_description - descripción completa que se muestra en la página de detalles de la insignia

english

japanese

2 Me gusta

¡Hola! ¡Gracias por responder! ¿Cómo se implementa el paso dos para encontrar la “i18n key”? No encuentro dónde está la “i18n key”.

En realidad no lo “encuentras”, simplemente lo derivas del nombre que le darás a la insignia. (Actualizaré el segundo paso para usar “derivar” en lugar de “encontrar”)

Por lo tanto, si usas “Buscador de Errores” (Bug Finder) como nombre de la insignia, la clave será badges.bug_finder.name

Por alguna razón, al buscar cualquier contenido en /admin/customize/site_texts me aparece el mensaje “No matching site texts found”. ¿Sabe a qué se debe esto?