PontoTiPontoTi / empresas en movimiento
Todos los artículos

Internacionalização (i18n): como estruturar um site em vários idiomas sem perder SEO

Internacionalização (i18n) é preparar um site para vários idiomas e regiões sem duplicar a arquitectura a cada novo mercado. O nome vem da contagem das dezoito letras entre o "i" e o "n" de "internationalization" — é só uma abreviatura técnica.

O difícil não é o termo, é decidir a estrutura de URLs, como detectar o idioma sem enganar ninguém e o que fazer enquanto o conteúdo ainda não está todo traduzido.

Subdomínio, subdiretório ou domínio próprio

Há três formas de separar idiomas num URL: domínio próprio por país (site. pt, site. de), subdomínio (en. site. com) ou subdiretório (site. com/en/). Um domínio próprio dá o sinal mais forte de segmentação por país, mas multiplica custos de DNS, certificados e gestão.

Um subdomínio separa a hospedagem mas fragmenta a autoridade de SEO e obriga a partilhar sessão e cookies entre domínios distintos.

Para a maioria dos sites com uma só equipa e uma só aplicação, o subdiretório é a opção mais simples: um único certificado, uma única sessão, e toda a autoridade do domínio acumulada num só sítio.

Deteção de idioma: sugerir, não impor

O cabeçalho Accept-Language do browser diz o que o visitante prefere, mas não devia decidir sozinho o que ele vê.

Trocar o site automaticamente com base nesse cabeçalho tem dois problemas: esconde conteúdo de motores de busca que rastreiam sem esse cabeçalho definido, e cria uma experiência inconsistente para quem partilha um link — o destinatário pode ver um idioma diferente do que foi enviado.

A prática mais segura é usar o Accept-Language só como sugestão inicial e guardar a escolha explícita do utilizador, normalmente por cookie, para as visitas seguintes.

hreflang, canonical e x-default

Cada página deve declarar as suas alternativas de idioma através da tag hreflang, incluindo a referência recíproca — se a versão em inglês aponta para a portuguesa, a portuguesa também tem de apontar de volta.

A tag canonical evita que motores de busca tratem versões quase idênticas como conteúdo duplicado, e um valor x-default indica qual a versão mostrar quando nenhum idioma listado corresponde ao do visitante.

Sem estes sinais, o motor de busca tem de adivinhar, e normalmente só indexa a versão mais linkada.

Rotas traduzidas não são conteúdo traduzido

É rápido construir a estrutura de URLs para seis idiomas. É muito mais lento traduzir o conteúdo todo com qualidade.

O erro mais comum é lançar a estrutura completa e deixar a maior parte das páginas no idioma original, atrás de um URL que promete outra coisa — o que confunde o visitante e pode ser penalizado pelo motor de busca.

É mais seguro lançar por fases: primeiro a navegação e as páginas de maior tráfego, depois o resto, sempre com clareza sobre o que já está traduzido e o que ainda não está.

A leitura da PontoTi

No pontoti. pt, o português é a base sem prefixo e os restantes cinco idiomas usam subdiretório (/en/, /es/, /fr/, /de/, /it/), com hreflang recíproco e canonical por página.

Optámos deliberadamente por não trocar o site com base no idioma do browser — só uma escolha explícita muda o idioma, guardada por cookie — precisamente para não esconder versões dos motores de busca nem surpreender quem recebe um link partilhado.

A estrutura já está pronta para os seis idiomas; o conteúdo está a ser traduzido por fases, a começar pela navegação e pelas páginas mais visitadas.

Fuentes consultadas