Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
pessoal faz tempo que vejo alguns sites com opção para mudar a linguagem, eu vi alguns sites quando clicka em mudar a linguagem é acrecentado por exemplo o seguinte texto na url
?lang=en
?lang=pt
eu gostaria de saber como fazer isso.
aguardo ajuda
Para entender como funcionam essas traduções é preciso saber que há várias formas de se fazer, mas geralmente o conceito é o mesmo. Isso pode ser feito tanto por BD como por arquivos de tradução. Nos arquivos você teria array's com as traduções. No caso do BD poderíamos ter por exemplo uma tabela "traducoes" com os campos: codigo, nome, texto, idioma. Nos locais onde precisam ser traduzidos pegamos os textos do BD pelo campo nome de acordo com o idioma selecionado, por exemplo:
Na tabela "traducoes" temos os seguintes registros:
-----------------------------------------------
codigo | nome | idioma | texto
-----------------------------------------------
1 ola pt Olá Mundo!
-----------------------------------------------
2 ola en Hello World!
-----------------------------------------------
Aí na exibição você faria referência ao texto de nome "ola" da tabela, e o idioma poderia ser selecionado de acordo com o desejado.
---
Bom aí está mais ou menos o conceito das traduções. E quanto a sua dúvida, o idioma escolhido pelo usuário pode ser passado pela url ou de qualquer outra forma, isso não infringiria em nada.
Ou por condicionais
if($_GET['lang'] == "eng")
{
// * texto em ingles
}
elseif($_GET['lang'] == "esp")
{
// * texto em espanhol
}
elseif($_GET['lang'] == "por")
{
// * texto em portugues
}
else
{
// * texto em portugues caso não passe nenhum atributo. é o padrão
}
ou por switch?
switch($_GET['lang'])
{
case "por":
// * texto em portugues;
break;
case "eng":
// * texto em ingles;
break
default:
// * texto em portugues;
break;
}Desenvolva módulos para as condicionais, utilize uma API do google para traduzir todo o conteúdo de seu site de acordo com a linguagem escolhida. Consiste em você determinar qual módulo entrará em ação, de acordo com cada linguagem selecionada.
Com um link, talvez?