Substituição em massa em strings traduzidas?

I know that Discourse lets use now change text almost everyone on the site through the admin panel, but is there a way to do something like find and replace all?

I know categories and topics are fundamental to how Discourse was built, but what if I wanted to match the experience of the forum I’m migrated to and instead wanted to use ‘Forums’ to replace ‘Categories’ and ‘Threads’ to replace to ‘Topics’. ?

Yes, see this:

There is no easy way to do a bulk translation. It would also be a little confusing because the URLs would not reflect the changes.

2 curtidas

I think that you could do it with a plugin that replaced the locale. I do think it would be confusing for people.

Também estou interessado em fazer algo parecido. Se houver uma maneira de implementar isso em um plano Standard ou Business, seria ótimo!

Eu também, mas estou auto-hospedando.

É um pouco mais fácil se você estiver auto-hospedando. Eu provavelmente faria isso no console do Rails, embora um plugin fosse outra maneira de fazer isso.

O que você quer substituir?

1 curtida

Quero substituir o texto “Topic” por “Thread”. Existe um comando para isso?

Não vejo uma maneira fácil de fazer isso. Acho que o mais fácil seria um plugin que substitua todas as instâncias que você deseja alterar, para que você possa fazer isso em um editor de texto. Provavelmente levaria algumas horas. Há alguns anos, talvez fossem 5? Você começaria com GitHub - discourse/discourse-plugin-skeleton: Template for Discourse plugins, copiaria config/locales/client.en.yml para config/locales no esqueleto, excluiria as strings que não deseja alterar e editaria aquelas que deseja alterar. Embora deva haver uma maneira de fazer o Rails fornecer todas as strings (ah, aqui está isso https://stackoverflow.com/questions/37842701/how-to-list-all-available-locale-keys-in-rails, e então você poderia percorrer todas elas, obter a string e inserir um TranslationOverride para aquelas que deseja alterar, mas a rota do plugin é provavelmente melhor, pois você vai querer ajustar as coisas manualmente e ver o que está mudando)

Tentar mudar “topic” para “thread” é uma má ideia, no entanto. Nada de bom pode vir disso. E o Discourse não tem discussão em tópicos, é por isso que eles são chamados de tópicos. E nem sempre haverá novas strings adicionadas que contenham “topic”, mas elas podem aparecer ao longo do tempo.

Tudo bem, vou tentar mais tarde hoje. Acho que pode ser muito trabalho para algo simples. Eu sei um pouco de JS e Python, mas nunca mexi com Ruby.

Obrigado pela ajuda!

1 curtida

De fato. Eu recomendaria que você dedicasse seu tempo a praticamente qualquer outra coisa que ache que fará seu fórum ter sucesso.

2 curtidas

Apenas um lembrete: escrevi um plugin que pode resolver isso

3 curtidas