# Como corrigir sitemap multilíngue com erro no WordPress

O sitemap multilíngue com erro deixa as URLs dos idiomas secundários de fora, retorna 404 em /sitemap.xml ou gera dois sitemaps concorrentes. As causas mais comuns são o idioma não incluído pelo plugin multilíngue, o sitemap nativo do WordPress disputando com o do plugin de SEO, ou os permalinks desatualizados.

## O que é o sitemap multilíngue com erro?

Um site multilíngue precisa de um sitemap que liste as URLs de todos os idiomas e indique as variantes com anotações hreflang, para o Google rastrear cada versão. O erro acontece quando o sitemap só inclui o idioma padrão, quando o sitemap nativo do WordPress e o do plugin de SEO existem ao mesmo tempo e se contradizem, ou quando o /sitemap.xml retorna 404 por regras de reescrita desatualizadas. O buscador então não descobre ou não relaciona as traduções.

## Como identificar

- O /sitemap.xml lista só as URLs do idioma padrão, sem as versões dos outros idiomas.
- O endereço /sitemap.xml retorna "404 Not Found" mesmo com permalinks ativos.
- O Search Console acusa "Não foi possível ler o sitemap" ou erro de hreflang.
- Existem dois sitemaps (/wp-sitemap.xml e /sitemap_index.xml) com listas diferentes de URLs.

**Antes de começar:** Desative apenas um dos sitemaps por vez e confirme o resultado antes de reenviar ao Search Console, para não remover do índice URLs que ainda eram válidas.

## Como prevenir

- Mantenha apenas um gerador de sitemap ativo, o nativo ou o do plugin de SEO, nunca os dois
- Inclua todos os idiomas na configuração do sitemap antes de reenviar ao Search Console
- Re-salve os permalinks e limpe o cache após adicionar um idioma ou mudar a URL

Erros relacionados

- [Como corrigir WPML com tradução que não aparece](https://full.services/wp-fixer/corrigir-wpml-traducao-nao-aparece/)
- [Como corrigir erro ao criar site na rede Multisite](https://full.services/wp-fixer/corrigir-erro-criar-site-multisite-wordpress/)
- [Como corrigir bandeira de idioma que não aparece (WPML/Polylang)](https://full.services/wp-fixer/corrigir-bandeira-idioma-nao-aparece-wordpress/)

## Causa

- Idioma secundário não incluído na geração do sitemap pelo plugin multilíngue.
- Sitemap nativo do WordPress (/wp-sitemap.xml) ativo junto com o do plugin de SEO, gerando dois índices conflitantes.
- Links permanentes desatualizados, fazendo /sitemap.xml retornar 404 por falta de regra de reescrita.
- Anotações hreflang ausentes ou apontando para URLs inexistentes, quebrando a validação no Search Console.
- Cache ou CDN servindo uma versão antiga do sitemap, sem as URLs de idioma recém-criadas.

## Como resolver

1. Escolha um único gerador de sitemap: se usa um plugin de SEO, desative o sitemap nativo do WordPress para não ter dois índices conflitantes.
2. Inclua todos os idiomas: na configuração do plugin multilíngue e do plugin de SEO, marque os tipos de conteúdo de cada idioma para entrarem no sitemap.
3. Re-salve os links permanentes: em Configurações > Links permanentes, clique em Salvar para reescrever as regras e acabar com o 404 em /sitemap.xml.
4. Valide o hreflang: confirme que cada URL traduzida lista as variantes hreflang corretas e que todas existem, para o Search Console não acusar erro.
5. Limpe o cache e reenvie: limpe o cache do plugin e do CDN, abra o sitemap no navegador para confirmar as URLs e reenvie no Search Console.

## Código

```php
// functions.php do tema-filho — desliga o sitemap NATIVO do WordPress
// (use quando um plugin de SEO ja gera o sitemap multilingue)
add_filter( 'wp_sitemaps_enabled', '__return_false' );

// Opcional: redireciona o sitemap nativo antigo para o do plugin de SEO
add_action( 'template_redirect', function () {
    if ( isset( $_SERVER['REQUEST_URI'] ) && strpos( $_SERVER['REQUEST_URI'], 'wp-sitemap.xml' ) !== false ) {
        wp_redirect( home_url( '/sitemap_index.xml' ), 301 );
        exit;
    }
} );
```

## Perguntas frequentes

### Por que o sitemap só mostra o idioma padrão?

Porque o plugin multilíngue ou o de SEO não está incluindo os idiomas secundários na geração. Marque os tipos de conteúdo de cada idioma na configuração do sitemap e limpe o cache para as URLs traduzidas aparecerem.

### Tenho dois sitemaps diferentes. Qual uso?

O /wp-sitemap.xml é o nativo do WordPress e o sitemap_index.xml costuma ser do plugin de SEO. Manter os dois confunde o Google. Escolha um, desative o outro com o filtro wp_sitemaps_enabled e reenvie só o que ficou.

### O /sitemap.xml dá 404. Como resolver?

Re-salve os links permanentes em Configurações > Links permanentes. O sitemap depende de regras de reescrita; quando elas ficam desatualizadas, a URL retorna 404. Salvar reescreve as regras e o sitemap volta a abrir.

### Preciso de hreflang no sitemap multilíngue?

Sim, é o que diz ao Google quais URLs são traduções umas das outras. Sem hreflang correto, o buscador pode tratar as versões como conteúdo duplicado. Garanta que cada URL liste as variantes e que todas existam de fato.

### O cache pode quebrar o sitemap?

Pode. Se o plugin de cache ou o CDN guarda uma versão antiga, o sitemap fica sem as URLs de idioma recém-criadas. Limpe o cache, abra o sitemap no navegador para conferir e só então reenvie ao Search Console.

### Devo reenviar o sitemap no Search Console após corrigir?

Sim. Depois de incluir os idiomas, ajustar o hreflang e limpar o cache, reenvie o sitemap no Search Console para o Google reprocessar e acusar se ainda há erro de leitura ou de hreflang.

**Fonte:** [WordPress.org — Sitemaps](https://developer.wordpress.org/rest-api/reference/sitemaps/)
