O primeiro site internacional que enviei tinha onze versões em idiomas e zero hreflang O tráfego parecia bom no agregado, então ninguém questionou por meses Então um colega em Berlim procurou nosso produto no google.de e conseguiu a página em inglês Não o alemão existia, foi indexado, e foi melhor escrito do que o original em inglês O Google simplesmente não tinha motivos para preferir, então serviu qualquer versão que tivesse mais links apontando para ele, que era a que estávamos promovendo no Twitter em inglês há dois anos.
Esse é o modo de falha hreflang existe para prevenir, e é invisível de dentro do seu próprio mercado Você pesquisa do seu próprio país em seu próprio idioma, obter a página certa, e concluir tudo funciona As pessoas que recebem a página errada são aqueles que você nunca ouvir, porque eles saltaram.
Este guia cobre hreflang de ponta a ponta: o que é a anotação, como os códigos são construídos, os três lugares onde você pode colocá-la, as regras que fazem o Google confiar nela e como ela interage com tags canônicas e sitemaps É o hub para um conjunto de peças focadas x-padrão, os erros que quebram implementações, hreflang versus canônicoe configurações específicas da estrutura para Próximo.js e WordPress.
tl;dr: Uma tag hreflang é a
rel="alternate" hreflang="xx-XX"anotação que informa aos motores de busca qual idioma e versão regional de uma página para atender a cada usuário O valor é um código de idioma ISO 639-1, opcionalmente mais um código de região ISO 3166-1 alfa-2, então o Reino Unido éGBe nãoUK. As anotações devem ser recíprocas: cada página de um conjunto lista todas as versões, incluindo ela mesma, ou o Google descarta o conjunto. Você pode implementá-lo como HTML<link>tags, entradas de mapa de site XML ou HTTPLinkcabeçalho, mas apenas um método por conjunto de URL. o gerador hreflang constrói todos os três formatos no navegador e valida os códigos antes de enviá-los.
O que é uma tag hreflang?
Uma tag hreflang é uma anotação que declara o & quot; existe outra versão desta página para esta linguagem e região, e ela vive nesta URL." Parece com isto:
<link rel="alternate" hreflang="fr-CA" href="https://example.com/fr-ca/" />
Leia da esquerda para a direita: rel="alternate" diz que esta é uma variante e não uma página diferente hreflang="fr-CA" diz que a variante é para falantes de francês no Canadá e href dá a URL absoluta Nada aqui é uma diretiva O Google trata o hreflang como uma forte dica sobre qual URL trocar por um determinado pesquisador, não como um comando que ele deve obedecer, e ele substituirá a dica quando a evidência apontar para outro lugar.
A anotação é definida no Google's documentação sobre versões localizadas de uma página, e os valores do código vêm de BCP 47, o padrão IETF para tags de idioma O Bing suporta a mesma anotação O Yandex não usa hreflang e depende de suas próprias configurações regionais, o que importa se os mercados de língua russa fazem parte do seu plano.
Quando você precisa de hreflang e quando é uma perda de tempo?
Você precisa quando o mesmo conteúdo existe em mais de um idioma, ou em um idioma voltado para mais de uma região Você não precisa dele para um site que existe apenas em inglês para apenas um mercado, e adicioná-lo lá não faz nada além de adicionar marcação.
Três formas surgem na prática:
| Forma do site | exemplo | Precisa de hreflang? |
|---|---|---|
| Uma língua, um mercado | Um site de marketing SaaS exclusivo para os EUA | não |
| Vários idiomas | /en/, /de/, /ja/ versões das mesmas páginas |
sim |
| Uma língua, vários mercados | example.com/us/ e example.com/uk/, ambos ingleses |
Sim, e este é o caso mais frequentemente perdido |
A terceira linha é aquela em que vale a pena fazer uma pausa Duas páginas em inglês com preços diferentes, envio de cópia e ortografia parecem duplicatas para um rastreador Sem hreflang, o Google escolhe uma e filtra a outra, que é como uma loja do Reino Unido acaba invisível no google.co.uk enquanto seu gêmeo dos EUA classifica A anotação é o que diz ao Google que essas são variantes regionais deliberadas, em vez de duplicação acidental.
Como são construídos os códigos hreflang?
O valor tem duas partes, e apenas a primeira é necessária.
o língua é um código ISO 639-1 de duas letras, minúsculo: en, fr, de, ja, pt. o região é um código ISO 3166-1 alfa-2 de duas letras, maiúsculo, unido a um hífen: en-US, pt-BR, de-AT. O invólucro é uma convenção e não um requisito rígido, porque as tags de idioma são combinadas de forma insensível a maiúsculas e minúsculas, mas cada revisão de código é mais rápida quando você o segue.
As regras que as pessoas erram, na ordem em que as vejo errar:
- O Reino Unido é
GB.UKnão é um código ISO 3166-1.en-UKé silenciosamente ignorado, o que é pior que um erro porque nada lhe diz. - Região por si só não é uma coisa. Não há forma de dizer & quot; todos no Canada" sem nomear uma língua.
hreflang="CA"é inválido. Você escreveen-CAefr-CAcomo entradas separadas. - América Latina é
es-419. Este é um código de região numérico M49 da ONU, válido no BCP 47, e a resposta certa quando o seu espanhol se destina à região e não especificamente à Espanha ou ao México. - Os chineses geralmente querem um roteiro, não um país.
zh-Hantpara Tradicional ezh-Hanspara Simplificado descreva o sistema de escrita, que é o que os leitores se preocupam.zh-CNezh-TWtrabalhe, mas conflua escrita com geografia. - A linguagem e a região são eixos independentes.
en-CAefr-CAambos podem existir. Assim podeen-US,en-GB, een-AU. Não assuma uma página por país ou uma página por idioma; mapeie as combinações que seu site realmente serve.
o gerador hreflang verifica cada código em relação à forma esperada e sinaliza subtags que não são valores de idioma ou região reconhecidos, portanto en-UK falha no teclado em vez de rastejar três semanas depois.
Para onde vão as tags hreflang?
São suportados três métodos de implementação, e são equivalentes em efeito A escolha é operacional.
| método | Onde vive | melhor para | custar |
|---|---|---|---|
HTML <link> |
Cada página's <head> |
A maioria dos sites; mais fácil de depurar | Cada página carrega o conjunto completo, que cresce com a contagem do idioma |
Mapa do site XML xhtml:link |
Entradas sitemap | Grandes locais, muitos locais | O mapa do site deve permanecer sincronizado; mais lento para ser pego |
HTTP Link cabeçalho |
Resposta servidor | PDFs e outros arquivos não HTML | Precisa de configuração do servidor; invisível no navegador & #39; s view-source |
Tags HTML na cabeça:
<link rel="alternate" hreflang="en-US" href="https://example.com/us/pricing" />
<link rel="alternate" hreflang="en-GB" href="https://example.com/uk/pricing" />
<link rel="alternate" hreflang="de-DE" href="https://example.com/de/preise" />
<link rel="alternate" hreflang="x-default" href="https://example.com/pricing" />
O mesmo conjunto das entradas do mapa do site, que precisa do xhtml namespace declarado em <urlset>:
<url>
<loc>https://example.com/us/pricing</loc>
<xhtml:link rel="alternate" hreflang="en-US" href="https://example.com/us/pricing"/>
<xhtml:link rel="alternate" hreflang="en-GB" href="https://example.com/uk/pricing"/>
<xhtml:link rel="alternate" hreflang="de-DE" href="https://example.com/de/preise"/>
<xhtml:link rel="alternate" hreflang="x-default" href="https://example.com/pricing"/>
</url>
E como cabeçalho HTTP, que é a única opção para um PDF:
Link: <https://example.com/us/whitepaper.pdf>; rel="alternate"; hreflang="en-US",
<https://example.com/de/whitepaper.pdf>; rel="alternate"; hreflang="de-DE"
Escolha um método por conjunto de URLs A mistura de tags HTML e entradas de mapa do site para as mesmas páginas não é fatal, mas dá ao Google duas fontes que podem se afastar, e no dia em que eles discordarem você não saberá qual ganhou Se você já está produzindo um mapa do site com o Gerador de mapas de sites XML, o formato do mapa do site cai direto nele.
Por que o hreflang deve ser recíproco?
Porque uma reivindicação unidirecional é inverificável Se a sua página em inglês diz & quot; a versão em francês está lá & quot; e a página em francês não diz nada, qualquer um poderia apontar para qualquer um A regra do Google & #39; é que ambos os lados devem concordar, e o exigência return-tag é afirmado claramente em sua documentação: anotações sem confirmação de tags de retorno são ignoradas.
A forma prática da regra é mais simples do que parece Coloque o conjunto completo e idêntico de anotações em todas as páginas do grupo, incluindo uma entrada auto-referencial para a própria página A página em inglês lista inglês, francês, alemão e x-default Assim faz a página em francês O mesmo acontece com o mesmo bloco, byte por byte, em todos eles.
Essa redundância é o recurso Ele faz o conjunto auto-verificar e torna a implantação mecânica: construir o bloco uma vez por grupo de URL e renderizá-lo a partir de uma única fonte, em vez de mão-edição por página A mão-edição é como um conjunto de nove páginas termina com oito blocos corretos e uma entrada em falta, e uma entrada em falta é suficiente para o Google desconfiar do par a que pertence.
O que faz x-default?
x-default nomeia a página a ser servida quando nenhuma outra entrada corresponde ao usuário Alguém navegando em terras coreanas em um site com versões em Inglês, Francês e Alemão: sem x-default, adivinha o Google Com ele, você decide, e a resposta geralmente é um seletor de idioma ou sua página inicial internacional principal.
Não é um código de idioma e não substitui um Sua página em inglês ainda precisa de seu próprio en ou en-US entrada, e x-default fica ao lado como um catch-all O Google trata-o como opcional, e EU trato-o como necessário, porque o & quot; o algoritmo escolhe algo & quot; não é uma estratégia de encaminhamento O guia x-default completo abrange onde apontá-lo, o que acontece quando você o aponta para um redirecionamento e por que uma página seletora de idioma precisa de cuidados próprios.
Como o hreflang e as tags canônicas interagem?
Eles respondem a perguntas diferentes e não devem se contradizer.
Uma etiqueta canónica diz & quot; destes URLs quase idênticos, indexe este." Uma anotação hreflang diz " estes URLs são alternativos localizados, servem o certo por usuário." A falha que come versões inteiras de idiomas é canonizar entre idiomas: sua página em francês declara a página em inglês como canônica, o que diz ao Google para retirar o URL em francês do índice, e hreflang não pode ressuscitar um URL que foi canonizado.
A regra é curta. Cada página canoniza para si mesma. Hreflang descreve as relações entre essas páginas autocanônicas. Obtenha esses dois fatos diretamente e os dois sistemas cooperem; faça-os cruzar e o sinal mais forte, canônico, vence e exclui silenciosamente suas traduções. Hreflang vs canônico funciona através das combinações, incluindo o caso parâmetro-URL onde ambos estão em jogo ao mesmo tempo.
Como você testa que o hreflang está funcionando?
Comece com a Consola de Procura O relatório de Direcionamento Internacional lista as duas falhas que importam em escala, o & quot; sem tags de retorno" e o & quot; código de idioma desconhecido", em toda a propriedade, que bate a inspeção de páginas uma de cada vez Observe que ela fica atrasada: as correções aparecem somente depois que o Google recrastreia todas as páginas do conjunto afetado, portanto, uma semana sem alteração é normal e não evidência de que a correção falhou.
Em seguida, rastreie seu próprio site Qualquer rastreador que surface as anotações do hreflang mostrará o conjunto que cada URL carrega, e a verificação que você está executando é se cada página de um grupo carrega o bloco completo idêntico Classifique por grupo e eyeball as contagens; uma página com quatro entradas em um grupo de cinco é o bug.
Em seguida, verifique os alvos resolver. Cada href deve ser uma URL absoluta que retorna 200 e é indexável Um alvo que redireciona ainda funciona, mas adiciona um salto, um alvo que 404 s envenena o conjunto e um alvo que é noindex é uma contradição: você está anunciando uma página que disse ao Google para ignorar.
O que quebra com mais frequência?
Em ordem aproximada de quantas vezes os encontro:
- Faltando tags de retorno. A página A aponta para B, B não aponta para trás O Google descarta o par.
- Sem x-padrão. Usuários incomparáveis obtêm qualquer versão que o Google adivinhe.
- Códigos não ISO.
en-UKleads, seguidos por outros inventados comoen-EU. - URLs relativos. hreflang requer URLs absolutos, protocolo e host incluídos.
- Incompatibilidades de barra de arrasto.
/fr/e/frsão URLs diferentes e a anotação deve corresponder ao formulário indexável. - Canônico apontando entre idiomas. Cancela todo o conjunto.
- Métodos mistos. Tags HTML e entradas de mapa do site para os mesmos URLs, se separando.
Cada um deles produz marcação que parece certa. É isso que torna o hreflang tedioso: o fracasso é sempre silencioso. 12 erros comuns de hreflang caminha por cada um com o sintoma que você observaria e a correção.
Como você gera e mantém as tags?
Para um punhado de URLs, escrever à mão o bloco é bom uma vez e doloroso na segunda alteração Para qualquer coisa maior, gere-o.
o gerador de etiquetas Hreflang pega uma linha por versão - um código e uma URL absoluta - e emite o bloco como tags de link HTML, entradas de mapa do site ou um cabeçalho HTTP Ele valida cada código em relação à forma ISO, sinaliza subtags não reconhecidas, captura códigos duplicados, rejeita URLs relativos e avisa quando o conjunto não tem padrão x. Ele é executado inteiramente no navegador, portanto, sua estrutura de URL, que mapeia toda a sua arquitetura internacional, nunca é carregada em lugar nenhum.
Para um site que já está modelado, a melhor resposta a longo prazo é renderizar o bloco da sua configuração de roteamento para que ele não possa derivar Isso é o que o Próximo.js e WordPress os guias cobrem: uma fonte de verdade para o mapa de localidade, um componente ou filtro que renderiza o conjunto recíproco completo em cada página do grupo O gerador é então a coisa que você usa para verificar a saída em vez de produzi-la, que é a divisão correta do trabalho quando um site passa de algumas dezenas de URLs.
Se você estiver montando o restante da camada técnica de SEO ao mesmo tempo, o gerador de meta tags lida com o cabeçalho por página e o Gerador de Robôs.txt abrange diretivas de rastreamento. O guia de ferramentas Hreflang vai mais fundo no próprio gerador.
Perguntas frequentes
O que é uma tag hreflang?
Uma tag hreflang é a rel="alternate" hreflang="xx-XX" anotação que informa aos motores de busca qual idioma e versão regional de uma página para atender a um determinado usuário Ele ajuda sites internacionais a classificar a versão certa em cada mercado e impede que páginas regionais quase idênticas sejam filtradas como duplicatas.
Preciso de hreflang se meu site estiver apenas em inglês?
Somente se você segmentar mais de um mercado de língua inglesa com URLs separados Um único site em inglês para um único mercado não precisa de hreflang Lojas separadas dos EUA e do Reino Unido, ambas em inglês, precisam, porque sem a anotação as duas parecem duplicatas.
A região faz parte de um código hreflang necessário?
Não. O código do idioma é obrigatório e a região é opcional. en é válido por si só O que não é válido é uma região sem idioma: não há como atingir um país sem nomear um idioma.
O hreflang garante qual página o Google mostra?
Não. Hreflang é um sinal forte, não uma diretiva. O Google ainda pode servir uma versão diferente quando outras evidências, como as configurações explícitas de idioma do usuário & #39; ou a linguagem de consulta, apontam para outro lugar.
Quanto tempo demora para que as alterações do hreflang tenham efeito?
O Google tem que recrastrear todas as páginas do conjunto antes de poder confirmar as tags de retorno, portanto, as alterações normalmente levam de dias a semanas, dependendo da frequência com que seu site é rastreado O relatório de segmentação internacional no Search Console atualiza sobre o mesmo atraso.
Posso usar hreflang e tags canônicas juntos?
Sim, e você deveria Cada página canoniza para si mesma, e hreflang descreve as relações entre essas páginas auto-canônicas Canonicalizando uma versão de idioma para outro remove-o do índice e cancela o conjunto hreflang.
O Bing suporta hreflang?
Sim. O Bing suporta o mesmo rel="alternate" hreflang anotação. Yandex não usa hreflang e depende de suas próprias configurações regionais.
Para onde devem ir as tags hreflang, no HTML ou no mapa do site?
Qualquer um funciona As tags de link HTML são mais fáceis de depurar e são a escolha comum As entradas do mapa do site mantêm os cabeçalhos das páginas enxutos e se adequam aos sites com muitos locais Use um método por conjunto de URL em vez de ambos.



