Errore feed RSS: XML declaration allowed only at the start of the document

Tutto sembra filare liscio nel tuo blog; magari hai appena fatto l’aggiornamento alla nuova versione di WordPress, e dai una controllatina generale un po’ a tutto; tutto ok, splendido, meraviglioso….quando alla fine ti viene in mente di controllare i feed: ma sì, dài, clicchiamo anche sull’iconcina arancione…. Ed ecco quello che vedi:
error-feed-xml-declarationUn messaggio di errore su fondo rosa, che ti manda nel panico con queste poche righe:

This page contains the following errors: error on line 2 at column 6: XML declaration allowed only at the start of the document
[trad: “La pagina contiene i seguenti errori: errore alla riga 2 della colonna 6: dichiarazione XML consentita solo all’inizio del documento].

La bella notizia è che chi è già iscritto ai tuoi feed probabilmente continua a riceverli normalmente, nonostante questo problema; la maggior parte dei feedreader, infatti, non risente di questo errore e trasmette il feed lo stesso. Tuttavia i lettori che desiderano iscriversi si trovano impossibilitati a farlo…. Perciò bisogna correre ai ripari. Che fare, dunque?

Controlla il feed con un validatore di feed

Prima di tutto, controlla il feed con un validatore di Feed, uno strumento che ti aiuta a capire se il feed è valido, e se trova errori ti dà qualche suggerimento su come risolverli. Ad esempio, puoi usare uno di questi due, entrambi ottimi:

Probabilmente il validatore ti mostrerà questo messaggio:

Blank line before XML declaration (WordPress)

Ciò significa che devi eliminare le righe vuote prima della dichiarazione XML, altrimenti il feed risulterà non valido. Queste righe vuote sono spesso causate da plugin e temi, perciò la prima cosa da fare per circoscrivere il problema è:

  1. installare il tema predefinito
  2. disinstallare tutti i plugin
  3. pulire la cache del browser (questo è molto importante, ricordati di farlo, perché altrimenti il vecchio feed resta in memoria anche dopo che tu hai fatto le correzioni, e ti darà sempre errore) e verificare il feed.
  4. Ricontrolla il feed. Se ora il feed funziona, reinstalla ad uno ad uno i plugin e il tema che avevi prima, così capisci chi è il responsabile dell’errore.

Eliminare le righe vuote

Per risolvere il problema, innanzitutto prova ad eliminare le ‘righe vuote’ in questi file di WordPress:

  • Nella root: wp-config.php
  • Nella cartella includes: wp-atom.php; wp-feed.phpwp-rss.phpwp-rss2.php ;
  • Nella cartella del tuo tema:  functions.php

Per eliminare le righe vuote, non devi far altro che aprire il file e controllare che non ci siano righe vuote prima e dopo questi due segni: <?php … ?> Se vedi una riga vuota, eliminala e salva il file. Puoi anche provare a scrivere questa linea di codice in fondo al file feed-rss2.php (dovrebbe servire ad eliminare automaticamente tutte le righe vuote):

ob_clean();

Se ciò non basta a risolvere il problema, puoi provare ad installare il plugin Fix My Feed Rss Repair O ancora, scarica questo script: http://wejn.org/stuff/wejnswpwhitespacefix.php, caricalo nella ROOT di WordPress (la ROOT è la ‘radice’, ovvero  la parte iniziale dove sono installati i primi file, come ad esempio il file config.php). Fatto questo, devi modificare il file index.php (sempre nella ROOT) aggiungendo questa riga di codice sotto:

include("wejnswpwhitespacefix.php");

N.B.: Ogni volta che ricontrolli il feed per vedere se funziona, ricordati che prima devi pulire la cache del browser, altrimenti rischi di visualizzare sempre lo stesso messaggio di errore anche quando in realtà il problema  è stato risolto, perché il browser conserva in memoria la pagina con l’errore. Ciò è molto fastidioso, te lo assicuro perché mi è appena successo di perdere un sacco di tempo per cercare di risolvere questo problema con i feed in uno dei miei blog; anche dopo averlo risolto, non potevo accorgermene perché non avevo pulito la cache di Chrome! ;) E allora continuavo a scervellarmi per niente! ;P

8 thoughts on “Errore feed RSS: XML declaration allowed only at the start of the document

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.