# Como corrigir o erro ao desativar RSS Feeds no Perfmatters

O erro ao desativar RSS Feeds no Perfmatters acontece quando a opção Disable RSS Feeds, em Options, fica ativa e passa a redirecionar ou bloquear todas as URLs de feed do WordPress, derrubando integracoes que ainda dependem do RSS, como Mailchimp, FeedBurner, podcast e leitores de feed.

## O que é erro ao desativar RSS Feeds no Perfmatters?

A opção Disable RSS Feeds do Perfmatters, na aba Options da configuração do plugin, desliga as URLs de feed nativas do WordPress: o feed principal em barra feed, o feed de comentarios, os feeds por categoria, por autor e por tag, além das variações em RSS, RSS2, Atom e RDF. O objetivo e reduzir superficie de ataque e pedidos desnecessarios em sites que nunca publicam por RSS, como uma landing page ou uma loja sem blog.

O erro aparece quando o site na verdade ainda depende do feed. Com a opção ligada, o Perfmatters intercepta o request de feed e o redireciona para a página inicial em vez de entregar o XML. Para um leitor de feed, para o Mailchimp em uma campanha RSS to email, para o FeedBurner ou para um agregador de podcast, isso significa que o feed simplesmente parou de funcionar, mesmo que o conteúdo do site continue publicando normalmente.

## Como identificar

- Ao abrir a URL do feed, em vez do XML aparece a página inicial do site, porque o request foi redirecionado para a home.
- O leitor de feed ou agregador mostra a mensagem de que o feed esta vazio, invalido ou não pode ser carregado.
- Uma campanha RSS to email do Mailchimp ou um FeedBurner deixa de buscar novos posts e não dispara mais os envios automaticos.
- Um feed de podcast hospedado no WordPress some dos diretorios e o player retorna feed não encontrado.
- Plugins que consomem o feed interno via fetch_feed param de exibir os ultimos posts, ainda que o resto do site funcione.

**Antes de começar:** Antes de alterar opções do Perfmatters em producao ou inserir código no functions.php, faça um backup do site ou teste em um ambiente de staging, para reverter caso o feed ou outra integração se comporte de forma inesperada.

## Como prevenir

- So ative Disable RSS Feeds em sites que comprovadamente não usam o feed, como landing pages e lojas sem blog, e nunca em sites com assinantes de RSS ou campanhas RSS to email.
- Antes de ativar, mapeie todas as integracoes que leem o feed, como Mailchimp, FeedBurner, podcast e agregadores, para não desligar um canal ativo sem perceber.
- Depois de qualquer mudanca nas opções do Perfmatters, teste a URL barra feed e revise as integracoes externas antes de considerar o ajuste concluido.
- Documente no site quem decidiu ativar a opção e por que, para que uma futura troca de equipe não reative o feed achando que foi um erro, nem mantenha desligado quebrando assinantes.

Erros relacionados

- [Como corrigir o erro ao desativar emojis no Perfmatters](https://full.services/wp-fixer/corrigir-disable-emojis-perfmatters/)
- [Como corrigir funcionalidades quebradas pelo Perfmatters](https://full.services/wp-fixer/corrigir-funcionalidades-quebradas-perfmatters/)
- [Como corrigir a página de login inacessivel pelo Perfmatters](https://full.services/wp-fixer/corrigir-login-url-perfmatters/)

## Causa

- A opção Disable RSS Feeds esta marcada na aba Options do Perfmatters e o site ainda usa o feed para Mailchimp, FeedBurner, podcast ou um leitor de RSS, entao o feed que era esperado deixou de existir.
- O site usa uma campanha RSS to email ou automação que le periodicamente a URL de feed barra feed, e com a opção ligada o Perfmatters passa a redirecionar esse request para a home em vez de servir o XML.
- Um plugin de terceiros ou um widget do tema chama fetch_feed apontando para o próprio feed interno do WordPress, que foi desligado pela opção, fazendo o bloco de ultimos posts ficar vazio.
- A opção foi ativada apenas para ganho de performance ou segurança por engano, em um site que de fato pública por blog e cujos assinantes dependem do feed para receber novos posts.
- Existe cache de página servindo a versão antiga do feed por um tempo, criando a impressao de comportamento intermitente: ora o feed antigo aparece, ora cai no redirecionamento da home depois que o cache expira.

## Como resolver

1. Confirme se o seu site realmente precisa do feed RSS: Antes de mexer, decida se o feed e necessário. Se o site tem blog com assinantes, usa Mailchimp RSS to email, FeedBurner, podcast ou qualquer integração que le o feed, você precisa do RSS ligado. Se e uma landing page ou loja sem blog e ninguem consome o feed, manter desativado e aceitavel.

```
Liste onde o feed e usado: Mailchimp, FeedBurner, leitor de RSS, podcast, agregador
Se houver qualquer consumidor, o feed precisa ficar ligado
```

2. Desmarque Disable RSS Feeds na aba Options do Perfmatters: Va ao painel do WordPress, abra as configurações do Perfmatters e na aba Options localize a opção Disable RSS Feeds. Desmarque essa opção para que o WordPress volte a servir as URLs de feed normalmente, e salve as alterações.

```
Painel WP -> Settings -> Perfmatters
Abra a aba Options
Localize Disable RSS Feeds e desmarque a opção
Clique em Save Changes
```

3. Limpe o cache de página e do CDN: Depois de salvar, limpe todo o cache para remover a versão redirecionada do feed que ainda pode estar armazenada. Limpe o cache do plugin de cache e também do CDN, caso use Cloudflare ou similar, para que o próximo request do feed receba o XML real.

```
Limpe o cache do seu plugin de cache (WP Rocket, LiteSpeed, etc.)
Purgue o cache do CDN ou do Cloudflare se houver
Aguarde alguns segundos antes de testar novamente
```

4. Teste a URL do feed direto no navegador: Acesse a URL do feed principal adicionando barra feed ao final do domínio. O resultado correto e o XML do feed, com os ultimos posts listados em formato RSS. Se ainda cair na home, reveja se a opção foi mesmo desmarcada e se o cache foi limpo.

```
Abra no navegador: https://seu-domínio.com/feed/
Confirme que aparece o XML do feed e não a página inicial
Teste também /comments/feed/ se usar feed de comentarios
```

5. Revalide as integracoes que dependiam do feed: Com o feed de volta, force a releitura nas ferramentas externas. No Mailchimp, valide a URL do feed na campanha RSS. No FeedBurner ou no diretório de podcast, peca um novo fetch. Confirme que os ultimos posts voltaram a aparecer no destino.

```
No Mailchimp, reinsira e valide a URL do feed na campanha RSS to email
No FeedBurner ou diretório de podcast, force um novo Resync ou Ping
Confirme que os posts recentes voltaram a aparecer no destino
```


## Código

```php
<?php
// Desabilita SELETIVAMENTE so os feeds que voce nao usa,
// mantendo o feed principal (/feed/) ativo para assinantes e Mailchimp.
// Use isto no lugar do Disable RSS Feeds quando precisar de controle fino.
add_action( 'do_feed_rdf', 'full_block_extra_feeds', 1 );
add_action( 'do_feed_atom', 'full_block_extra_feeds', 1 );
add_action( 'do_feed_rss', 'full_block_extra_feeds', 1 );
add_action( 'do_feed_atom_comments', 'full_block_extra_feeds', 1 );
add_action( 'do_feed_rss2_comments', 'full_block_extra_feeds', 1 );
function full_block_extra_feeds() {
    wp_die(
        esc_html__( 'Este feed nao esta disponivel. Acesse a home do site.', 'full' ),
        '',
        array( 'response' => 410 )
    );
}
// Observacao: NAO registramos do_feed_rss2 aqui, logo /feed/ continua valido.
```

## Perguntas frequentes

### Por que meu feed RSS redireciona para a home depois do Perfmatters

Porque a opção Disable RSS Feeds esta ativa na aba Options do Perfmatters. Com ela ligada, o plugin intercepta o request do feed e redireciona para a página inicial em vez de entregar o XML. Desmarque a opção e limpe o cache para o feed voltar.

### Onde fica a opção Disable RSS Feeds no Perfmatters

Ela fica nas configurações do Perfmatters, na aba Options, junto das demais opções de desativacao de recursos do WordPress. Para reativar o feed, basta desmarcar Disable RSS Feeds e salvar as alterações.

### Desativar o RSS Feeds no Perfmatters melhora a performance

O ganho e marginal. A opção serve mais para reduzir superficie de ataque e pedidos desnecessarios em sites que nunca usam feed. Em sites com blog e assinantes, o impacto em performance não compensa quebrar o canal de distribuicao.

### O Disable RSS Feeds afeta o Mailchimp e o FeedBurner

Sim. Campanhas RSS to email do Mailchimp e o FeedBurner leem a URL do feed do WordPress. Com a opção ligada, esse feed deixa de ser servido e as ferramentas param de buscar novos posts. Reative o feed e revalide a URL na ferramenta.

### Meu podcast hospedado no WordPress sumiu, foi o Perfmatters

Pode ter sido. Feeds de podcast também são feeds do WordPress, entao o Disable RSS Feeds os desliga junto. Desmarque a opção, limpe o cache e peca um novo fetch ao diretório de podcast para o feed reaparecer.

### Como saber se o problema e o Perfmatters ou outra coisa

Abra a URL do feed com barra feed no final do domínio. Se cair na home, o Disable RSS Feeds esta ativo. Desmarque a opção no Perfmatters e teste de novo: se o XML voltar, a causa era o plugin.

### Posso desativar so alguns feeds e manter o feed principal

A opção do Perfmatters desliga os feeds de forma geral, sem seletor por tipo. Se você precisa de um controle mais fino, mantenha a opção desativada e use código próprio no functions.php para desabilitar apenas os feeds que não usa.

### Preciso reativar o feed depois de desligar, perco os assinantes

Os assinantes em si não se perdem, mas enquanto o feed ficou desligado eles não receberam os posts novos. Ao reativar, os proximos posts voltam a ser distribuidos; os do período desligado podem não ser reenviados automaticamente.

**Fonte:** [Perfmatters Documentation — Disable RSS Feeds](https://perfmatters.io/docs/disable-rss-feeds-wordpress/)
