Come è possibile localizzare (rendere multilingue) badge e gruppi? Durante l’impostazione, ho notato che i titoli dei badge e dei gruppi non cambiano con la lingua del tema. Come posso fare in modo che badge e gruppi seguano il cambio di tema?
La possibilità di localizzare badge e gruppi personalizzati per un sito multilingue non esiste ancora: al momento solo post, categorie e tag possono essere localizzati.
Ok, grazie. Ma perché i badge su questo sito (meta.discourse.org) cambiano lingua insieme al tema? È causato da una funzione di traduzione? Suggerisco che il team ufficiale aggiunga impostazioni di personalizzazione multilingue per badge, gruppi e tag; altrimenti gli utenti multilingue non potranno comprendere il contenuto di badge, gruppi e tag.
Ci sono alcuni badge predefiniti su ogni sito che sono internazionalizzati (i18n) tramite Crowdin.
I badge personalizzati memorizzano nome/descrizione come testo semplice nel database. Quando viene chiamata I18n.t (funzionalità di internazionalizzazione) con una chiave come badges.my_custom_badge.name, non c’è una traduzione corrispondente, quindi ricade sul valore memorizzato nel DB — lo stesso testo per tutte le lingue.
Esiste una soluzione alternativa in cui gli amministratori possono aggiungere manualmente le traduzioni per le chiavi dei badge personalizzati per lingua.
È possibile personalizzare i testi del sito su <il tuo sito>/admin/customize/site_texts.
Alcuni passaggi concreti per te
- Crea il badge
- Vai su /admin/badges → Nuovo Badge
- Imposta nome, descrizione, icona, ecc. come di consueto
- Trova la chiave i18n
- Il modello di chiave è
badges.{nome_in_snake_case}.name - Il nome_in_snake_case è il nome del badge in minuscolo con gli spazi sostituiti da trattini bassi
- Quindi “Pokémon Master” →
badges.pokémon_master.name
- Aggiungi override di traduzione
- Vai su /admin/customize/site_texts
- Cerca
badges.pokémon_master - Vedrai chiavi come:
badges.pokémon_master.namebadges.pokémon_master.descriptionbadges.pokémon_master.long_description
- Passa alla lingua di destinazione (es. 简体中文), fai clic sulla chiave e inserisci il testo tradotto
- Ripeti per lingua
- Cambia la lingua nel menu a discesa, aggiungi le traduzioni per ogni lingua di cui hai bisogno
.name- titolo del badge.description- breve descrizione mostrata sulle schede dei badge.long_description- descrizione completa mostrata sulla pagina dei dettagli del badge
english
japanese
Ciao! Grazie per la risposta! Come si implementa il secondo passaggio per trovare la “chiave i18n”, non riesco a trovare la posizione della chiave i18n.
Non lo si “trova” realmente, lo si deriva semplicemente dal nome che si darà al badge. (Aggiornerò il secondo passo per usare “derivare” invece di “trovare”)
Quindi, se si usa “Bug Finder” come nome del badge, la chiave sarà badges.bug_finder.name
Non so per quale motivo, cercando qualsiasi cosa in /admin/customize/site_texts viene visualizzato il messaggio “No matching site texts found”. Sapete qual è la causa?


