Estágio 5: SEO e Idiomas
Objetivo: mecanismos de busca e assistentes de IA entendem cada página. URLs antigas caem no lugar certo. Cada idioma extra é tão correto quanto o original.
Etapas de SEO
- Um proprietário por tarefa.
- O plugin de SEO (Rank Math por padrão) controla títulos, meta, sitemaps e o grafo de esquema principal.
- O arquivo
schema.phpdo core adiciona os tipos próprios do site a esse grafo. - Silencie qualquer plugin de domínio que imprima seu próprio esquema, para que haja apenas um grafo, não dois que discordem.
- Cada página em
tests/helpers/site.tspassa nonpm run test:seo:- título entre 10 e 65 caracteres;
- descrição entre 50 e 160;
- canônica absoluta;
- um H1;
- atributo
lang; - zero requisições ao Google Fonts.
Checklist e regras de escrita:
references/seo-checklist.md.
- Dados estruturados:
- Organization (ou LocalBusiness) uma única vez.
- O tipo de item por página (Service, Product, TouristTrip, Course, …).
- Breadcrumbs (migalhas de pão).
- FAQ apenas para perguntas realmente respondidas na página.
- Nunca um
Offersem um preço. - Valide com o Rich Results Test do Google e o validador do Schema.org.
- Robots, sitemap, llms.txt:
- ao vivo permite crawling e lista o sitemap; staging bloqueia tudo (o core faz isso);
/llms.txté servido pelo core;- decida de propósito se crawlers de IA podem ler o site; depois verifique se a borda não está bloqueando por padrão (
wp-ship>cloudflare-edge.md).
- Redirecionamentos: siga o arquivo do projeto
docs/reference/REDIRECT_RULES.md. Mapeie cada URL antiga que tenha tráfego ou backlinks para sua página nova mais próxima (301, um salto), e teste cada uma. - Paridade antes de grandes mudanças. Antes de um redesign, migração ou lançamento de idioma, capture título, descrição, canônica e H1 de cada URL. Após cada etapa, compare. Recapture apenas para mudanças intencionais, com o motivo no commit.
- Search Console e Bing:
- verifique ambos;
- envie o sitemap;
- monitore a indexação de páginas semanalmente no primeiro mês;
- Search Console mantém apenas 16 meses de dados, então exporte ou ative a exportação em massa cedo.
Etapas de idioma (cada idioma é um piloto primeiro)
Siga references/multilingual.md. Em resumo:
- Regra zero: o idioma original não muda. Suas URLs, títulos, tags canônicas e texto permanecem idênticos (a verificação de paridade comprova).
- Piloto: a base do idioma (Polylang, o seletor, hreflang, strings em
.po/.mo), depois as páginas-chave e os itens principais. Em seguida, uma revisão de falante nativo no staging, depois publique. - O restante vem em lotes, cada um passando pela mesma revisão.
- Um idioma que ainda não foi publicado responde com 302 para o idioma original e não aparece em lugar nenhum: nem em sitemaps, hreflang, menus ou no seletor.
Portão (marque em SITE_STATUS.md)
-
npm run test:seoverde no staging; Rich Results test limpo em uma página de cada tipo - Sitemap, robots.txt e llms.txt corretos para o ambiente ao vivo
- Mapa de redirecionamentos de URLs antigas implementado e testado (ou "n/a")
- Cada idioma extra: piloto aprovado, revisão nativa feita, pares hreflang completos, canônica por idioma
Bugs que já enviamos, então verifique por eles
- A canônica da página inicial traduzida apontava para a página inicial original, então o Google descartaria
/fr/dos resultados em francês. A canônica de uma página traduzida é a URL traduzida. - JSON-LD em inglês em páginas em francês: o esquema deve seguir o idioma da página, ou ser omitido até que seja traduzido.
- Um portão que redirecionava um idioma não publicado com 301 para a página inicial. Portões são 302.