Escolha o idioma durante o registro ou login

Queremos que nossos usuários escolham seu idioma ao se registrarem pela primeira vez na comunidade ou também ao fazer login. Como as configurações precisam ser adaptadas? Temos uma mensagem de boas-vindas em dois idiomas e gostaríamos de permitir que o usuário escolha qual idioma será exibido.

Obrigado antecipadamente!

Se você ativar as configurações do Discourse allow user locale (permitir localidade do usuário) e set locale from accept language header (definir localidade a partir do cabeçalho Accept-Language), ambas encontradas no topo das configurações de “Configuração Básica”, os usuários terão seu idioma definido automaticamente para a localidade configurada em seu navegador da web quando se registrarem pela primeira vez no site. Em muitos casos, isso funcionará para definir o idioma correto para um usuário.

O Discourse não possui uma opção para permitir que os usuários selecionem manualmente seu idioma ao registrar sua conta. Posso ver como isso seria um recurso útil para alguns sites, no entanto.

Desde que a configuração do site allow user locale esteja ativada, os usuários podem alterar sua localidade após se cadastrarem no site. Isso é feito na seção Interface da página de preferências do usuário:

Existem algumas discussões existentes no Meta sobre sites multilíngues. Há algumas ideias neste tópico que podem ser úteis: Structuring a multilingual community.

Se você usa SSO, pode configurar isso no formulário de registro. É assim que funciona em Network Registration Form - Grassroots Justice Network.

Isso seria um recurso incrível. :crossed_fingers:t2:

Olá, Tobias,

ótima implementação. Como você criou esse formulário de registro? Ele parece muito profissional! :slight_smile: Nosso processo atual de registro é muito básico. O formulário de registro que você criou sugere exclusividade! Seria também muito acolhedor para usuários diversos poderem escolher seu idioma/país de origem. Além disso, a pergunta sobre onde o usuário nos conheceu é excelente!

Muito obrigado desde já!

Muito obrigado pelas instruções detalhadas!!

Isso é feito no WordPress usando o plugin wp discourse e o gravity forms. Há algum código personalizado lidando com a sincronização do idioma preferido da interface. @hudsonwebdev pode estar disposto a explicar para você.

@tobiaseigen Obrigado!!

@hudsonwebdev Olá, você se importaria de me explicar?

@roemer Desculpe pela demora. Como o Tobias mencionou, é uma combinação do WordPress e do Gravity Forms.
O Gravity Forms permite que você “conecte” (hook) ao envio. Quando o formulário do Gravity é submetido, você o instrui a executar um trecho de código que você escreve nos arquivos do seu tema ou plugin. Esse código geralmente é feito em PHP, utilizando uma instrução CURL para se conectar à API do Discourse. Você pode enviar informações coletadas no seu formulário do Gravity diretamente para o Discourse.