Firefox mudando o idioma de sites Drupal multilíngua

  • Última modificação: 27/03/2011
  • Tempo de leitura: 2 min.

Estou desenvolvendo um site em drupal para o público argentino. Como o site será administrado por brasileiros tive que deixar as duas línguas disponíveis, sendo que o usuário anônimo só veria a versão em espanhol.

Depois de tentar todas as configurações possíveis e imagináveis não conseguia descobrir porque o site não aparecia em espanhol no Firefox. Todos os outros browsers exibiam o site em espanhol e o firefox teimava em mostrar em português. Limpei cache de todos os lados e nada, adicionei “Espanhol” nas línguas do navegador, coloquei-a como preferencial (acima do Português) e funcionou. Tirei e voltou a mostrar o site em Português. De alguma forma o drupal estava disponibilizando pro Firefox a versão que ele dizia ser a melhor pro usuário. É uma coisa inteligente, se o usuário tem um navegador que prefere sites em português e existe uma versão disponível em português é essa que tem que ser mostrada, mas não era o que o meu cliente precisava.

Descobri como o drupal disponibilizava isso para o navegador: no arquivo “languages.inc” dentro da pasta “includes” existem três linhas (61,62 e 63 na versão 6.qualquer-coisa que estou usando) que fazem o serviço:

if ($language = language_from_browser()) {
    return $language;
}

Comentei e o firefox passou a exibir o site em espanhol, como eu precisava.

Qualquer alteração no core do drupal não é recomendada, mas dessa vez foi inevitável. Se alguém tiver alguma outra solução ou sugestão, pode colocar nos comentários que faço um update aqui.

Felipe Elia

Associate Director of Platform Engineering na 10up, WordPress Core Contributor, Global Polyglots Mentor na comunidade internacional do WordPress e Locale Manager na comunidade WordPress Brasil.

Este post tem 2 comentários

  1. Felipe Meirelles

    Só complementando, testei no google Chrome e funcionou também. Abraço cara!

  2. Felipe Meirelles

    Eu já tive problemas com o browser mudando a linguagem do site, porém foi no Google Chrome. Sempre que eu acessava o site por ele, era carregado em inglês. Vou testar essa solução pra ele também.

Comentários encerrados.