🎉 USE O CUPOM DESCONTO.FULL | 20% OFF acima de R$ 50,00

Como corrigir o feed RSS com erro no WordPress

Time Full Services Time Full Services
Tipo Outros erros
Nome do erro Feed RSS com erro EN: RSS feed error
Severidade Atenção
Descrição O erro no feed RSS do WordPress aparece quando o navegador ou validador mostra uma falha de XML, normalmente porque há espaço ou texto antes da abertura do feed. A correção é localizar a saída extra (functions.php, wp-config.php ou plugin) e remover o espaço em branco antes da tag de XML.

O que é o feed RSS com erro?

O feed RSS com erro no WordPress é a falha em que a URL do feed (por exemplo, seudominio.com/feed) deixa de retornar um XML válido. Em vez da lista de posts, o navegador mostra uma mensagem como erro de análise de XML apontando a linha 1. O WordPress gera o feed como um documento XML puro, e qualquer caractere enviado antes da declaração do XML (um espaço, uma linha em branco ou um aviso de PHP) invalida o arquivo inteiro, porque a primeira linha precisa ser exatamente a declaração do XML.

Como identificar

  • Ao abrir seudominio.com/feed, o navegador mostra “XML Parsing Error: XML or text declaration not at start of entity” na linha 1.
  • O validador oficial responde “This feed does not validate” e aponta espaço em branco antes da declaração do XML.
  • Plugins de e-mail, agregadores e o Mailchimp param de puxar os posts novos do feed sem aviso.
  • Ao ver o código-fonte do feed, há uma linha em branco ou um aviso de PHP (Warning/Notice) antes da tag de abertura do XML.
Antes de começar: Antes de editar functions.php ou wp-config.php por FTP, baixe uma cópia de backup do arquivo. Um erro de sintaxe nesses arquivos pode derrubar o site inteiro com a tela branca da morte.

Como prevenir

  • Não use a tag de fechamento de PHP no final de functions.php e wp-config.php para evitar espaço em branco depois dela
  • Salve todos os arquivos PHP em UTF-8 sem BOM, já que a marca invisível conta como saída antes do XML
  • Valide o feed no validador do W3C após instalar plugins novos, que podem injetar saída ou gerar avisos de PHP

Causa

  • Há um espaço ou linha em branco depois do fechamento de PHP (a tag de fechamento) no functions.php do tema, que é enviado antes do XML.
  • O wp-config.php ou um plugin tem caracteres após o fechamento de PHP, e esse texto vaza para o início de toda resposta, inclusive o feed.
  • Um aviso de PHP (Warning ou Notice) de um plugin desatualizado é impresso na tela e aparece antes da declaração do XML do feed.
  • Um plugin de SEO ou de cache injeta HTML ou um comentário no topo da saída, quebrando o formato XML esperado pelo feed.
  • O arquivo functions.php foi salvo com codificação que adiciona um BOM (marca de ordem de byte) no início, contando como caractere antes do XML.

Como resolver

  1. Valide o feed e localize o erro: abra o feed em seudominio.com/feed e use o validador oficial do W3C. A mensagem aponta se há espaço em branco antes do XML e em qual byte, o que confirma que é saída extra e não corrupção de dados.
  2. Revise o final do functions.php: via FTP, abra o functions.php do tema ativo. Se houver a tag de fechamento de PHP no fim do arquivo, remova-a junto com qualquer espaço ou linha em branco depois dela. Um arquivo só de PHP não precisa de tag de fechamento.
  3. Confira o wp-config.php: verifique se o wp-config.php termina sem espaço ou texto após o fechamento de PHP. Qualquer caractere depois dele é enviado antes do XML e quebra o feed.
  4. Isole o plugin culpado: se os arquivos estão limpos, desative os plugins e reabra o feed. Quando ele voltar a validar, reative um por vez até o erro retornar, identificando o plugin que injeta saída ou gera o aviso de PHP.
  5. Salve os arquivos sem BOM: se editou functions.php ou wp-config.php, salve em UTF-8 sem BOM. Editores comuns adicionam essa marca invisível no início, que conta como caractere antes do XML e mantém o feed quebrado.
PHP
// mu-plugin (wp-content/mu-plugins/sem-saida-feed.php): captura saida indevida antes do feed
// Use APENAS para diagnostico: descobre o arquivo que imprime algo cedo demais
add_action( 'init', function () {
    if ( is_feed() && headers_sent( $arquivo, $linha ) ) {
        error_log( sprintf(
            'Feed RSS quebrado: saida iniciada em %s na linha %d',
            $arquivo,
            $linha
        ) );
    }
}, 1 );

Perguntas frequentes

Por que meu feed RSS mostra erro de XML na linha 1?
Porque algo foi enviado antes da declaração do XML, que precisa ser o primeiro caractere do feed. Em geral é um espaço ou linha em branco depois do fechamento de PHP no functions.php ou no wp-config.php, ou um aviso de PHP impresso por um plugin.
O que significa espaço em branco antes do XML?
É qualquer caractere (espaço, quebra de linha ou texto) enviado antes da declaração do XML do feed. Como o feed é um documento XML puro, essa declaração deve abrir o arquivo. Qualquer coisa antes invalida o XML inteiro e gera o erro de análise.
Por que tirar a tag de fechamento de PHP resolve?
Porque qualquer espaço ou linha em branco depois dela é enviado ao navegador antes do feed. Arquivos que contêm só código PHP, como functions.php e wp-config.php, não precisam da tag de fechamento. Removê-la elimina a fonte mais comum de saída indevida.
Como sei qual plugin está quebrando o feed?
Desative todos os plugins e abra o feed. Se ele voltar a validar, reative um por vez, recarregando o feed a cada ativação, até o erro reaparecer. O plugin que estava sendo ativado nesse momento é o responsável pela saída ou pelo aviso de PHP.
O que é o BOM e por que quebra o feed?
BOM é uma marca de ordem de byte invisível que alguns editores adicionam no início de arquivos UTF-8. Mesmo sem aparecer, ela é enviada antes do XML e conta como caractere fora de lugar. Salve functions.php e wp-config.php em UTF-8 sem BOM para evitar isso.
Preciso de plugin para corrigir o feed RSS?
Não para corrigir a causa. O erro costuma estar em espaço em branco ou avisos de PHP nos arquivos do tema ou plugins, resolvido por FTP. Plugins ajudam só no diagnóstico ou para gerar o feed de forma alternativa, mas não substituem a limpeza da saída indevida.

Seja PRO.

Tenha acesso a snippets de código premium — PHP, JavaScript, CSS e HTML prontos para usar em seus projetos.

Conhecer o plano Pro →

Uma nova era para o WordPress.

A FULL Services redefine o CMS com uma arquitetura modular que transforma o WordPress em um motor de crescimento digital. 

Painéis personalizados

Um novo nível de controle para o WordPress. Acompanhe métricas, automações e evolução do seu site em um único painel visual.

A força por trás de grandes marcas

Para agências, estúdios e profissionais independentes que desejam oferecer soluções de alto nível com sua própria marca.

Componentes

Hero Sections

30 componentes

Seções de CTA

14 componentes

Login

14 componentes

Blog

14 componentes

Cabeçalhos

24 componentes

Seções de FAQ

53 componentes

Cadastro

53 componentes

Blog individual

53 componentes

Rodapés

28 componentes

Seções de contato

27 componentes

Seções de preços

27 componentes

Faixas

27 componentes

Portfólio

16 componentes

Seções de equipe

12 componentes

Números

12 componentes

Logotipos

12 componentes