BigThink

WordPress trick: come risolvere il problema del feed non valido

D'OHQualche volta potrà capitarvi un problema piuttosto fastidioso con WordPress: improvvisamente il vostro feed RSS risulta non più valido ed il browser si rifiuta di visualizzarlo, segnalando un errore di interpretazione XML senza un apparente motivo.

Disperati, andate in cerca del problema, aggiornate la versione di WordPress e tutti i plugin attivi, ma niente, l’errore persiste. Aprite allora il feed RSS in visualizzazione codice e scoprite che c’è uno spazio all’inizio del file! Uno spazio, uno stupido spazio che invalida l’XML e rende illeggibile tutto il feed.

Qual’è la causa e come risolvere?

Nello specifico, l’errore è il seguente:

Errore interpretazione XML: la dichiarazione XML o testuale non è all'inizio di un'entità

Il problema è dato sicuramente da uno degli ultimi plugin che avete installato: evidentemente il plugin incriminato aggiunge uno spazio bianco all’inizio di ogni file del vostro sito, a causa di una qualche funzione che viene chiamata ad ogni caricamento.

Una prima soluzione può essere quella di disabilitare i plugin uno ad uno e controllare ogni volta se lo spazio è scomparso. Chiaramente, nel caso abbiate molti plugin, questa operazione può risultare lunga e noiosa.

Il modo migliore per risolvere è invece questo:

  • Aprite il file wp-includes/feed-rss2.php
  • Inserite prima di qualsiasi altra cosa (ma ovviamente dopo <?php), questo codice:
ob_clean();
  • Salvate il file e uploadatelo sul server.

Riaprite il vostro feed e, con vostra grande sorpresa, scoprirete che ora funziona senza problemi! Attenzione che se usate Feedburner, dovrete aspettare che il sistema aggiorni la cache, perchè avrà in memoria ancora la versione vecchia.

Vediamo di capire. Cosa fa quella funzione? Semplicemente cancella dal buffer tutto l’output testuale che è stato scritto finora. Quindi qualsiasi testo (o spazio bianco) che verrà stampato prima del feed sarà cancellato. In questo modo lo spazio aggiunto viene ignorato ed il feed RSS risulta valido.

Questo è tutto, spero che l’articolo vi abbia aiutato nel caso foste disperati. Se invece non vi è mai capitato, meglio aggiungere questa pagina ai preferiti…. chissà che non vi torni utile in futuro.

Articolo scritto da Ghido

Fondatore di BigThink.it, si occupa dello sviluppo e del coordinamento dei progetti tecnologici. Specializzato nel Marketing su Facebook e nello sviluppo di Applicazioni Social, fa consulenza e formazione ad aziende ed agenzie.

Leggi anche...

Un gancio per attaccarsi a WordPress

Un gancio per attaccarsi a WordPress

Con questo primo Guest Post inizia una miniserie di articoli scritti da Camu, che ci condurrà passo-passo nella personalizzazione del nostro blog WordPress. Una delle funzionalità che fanno di WordPress una piattaforma su cui sviluppare funzionalità personalizzate per il proprio sito, è la capacità di essere esteso tramite i cosiddetti plugin. Possiamo fare l'analogia con ...
Escludere una categoria da tutte le sezioni di WordPress

Escludere una categoria da tutte le sezioni di WordPress

Tempo fa abbiamo visto come escludere i post di una certa categoria dalla Home del nostro blog WordPress. E se volessimo escludere una categoria da ogni sezione del blog? Dalla home, dal feed RSS, dalla ricerca, dagli archivi... Se siamo pigri, ci viene incontro il plugin Advanced Category Excluder, ma se invece siamo più smanettoni ...
WordPress: ottimizzare AdSense sui vecchi post del vostro blog

WordPress: ottimizzare AdSense sui vecchi post del vostro blog

Ottimizzare AdSense sul vostro blog è un'operazione che andrebbe fatta spesso: provare nuovi formati, variarne la posizione, aggiungerne di nuovi o rimuoverli... Tutto ciò vi permette di studiare la configurazione migliore, che vi rende di più. Esistono tantissimi plugin WordPress per inserire gli AdSense nelle pagine del vostro blog e non starò qui ad ...
WordPress: trovare la categoria corrente e quella padre

WordPress: trovare la categoria corrente e quella padre

Chi è solito creare template per WordPress o chi si è trovato a dover modificare il proprio avrà notato che le funzioni che abbiamo a disposizione per lavorare con le categorie di WordPress non sono poi molte. Spesso bisogna, infatti, andarsi a spulciare documentazione e sorgenti, per trovare il modo di fare quello ...
WordPress: gestire un sottomenu a categorie con icone

WordPress: gestire un sottomenu a categorie con icone

Dare visibilità ad ognuno dei temi trattati dal nostro blog non sempre è semplice, perchè non inserire un menu di navigazione con icone? La soluzione che proporremo sarà senza plugin, una versione adattabile alle proprie esigenze senza l’utilizzo di pesanti script jQuery. Inoltre potremo decidere esattamente quali cateogorie mostrare e in che ordine, evitandoci così ...

67 Commenti

  1. Ciao Ghido! Grazie per le informazioni di questo blog.
    Premetto che non sono un programmatore ma voglio semplicemente capire qual’ è il “feed RSS della fonte” del mio blog, per fornirlo ad un aggregatore di Blog, Wikio.it.
    Ti prego quindi, nel caso possa aiutarmi, di non suggerirmi modalità “avanzate”

    Prima di tutto ho (credo) attivato il feed RSS sulla pagina del mio blog, in questo modo:

    Ho attivato il widget di word press, nella modalità:
    titolo: http://miosito.wordpress.com/feed
    Feed(s) to display: articoli e commenti
    Format: Collegamento al testo

    Se verifico il collegamento RSS sulla barra del blog, viene fuori questa scritta:

    Safari non può aprire la pagina “feed://mioblog.org/feed/”. L’errore è: “Impossibile completare l’operazione. Operazione non permessa” (NSPOSIXErrorDomain:1) Scegli Safari
    ecc.ecc.

    Anche questo errore dipende dagli spazi bianchi?

    Ti ringrazio in anticipo!
    Roberto

    25 settembre 2011, 11:14
    • Ragazzi credo di aver detto una stupidaggine: il controllo del link non andava fatto in quel modo; in ogni caso l’ ho aggiunto e verificato su Wikio e funziona.

      Approfitto per chiedere consiglio per un buon “lettore” di Feed RSS. sto usando Yahoo ma c’ è di meglio?

      Lo so sono un primitivo ma ho scoperto solo ieri l’ utilità degli RSS.

      Ogni consiglio sarà molto apprezzato!
      Roberto

      25 settembre 2011, 11:39
  2. Grazie mille per la dritta, era proprio ste gaffi di spazio! thx

    25 marzo 2011, 21:16
  3. Ciao!
    intanto grazie per l’aiuto che dai, per caso sai quanto tempo ci mette feedburner a recepire le modifiche?

    1 febbraio 2011, 21:22
  4. Luca Fura

    Oddio oddio oddio… Ciiiro…
    Scusate, dev’essere effetto delle capocciate contro il muro.

    Dalla settimana scorsa ho problemi con feedburner + wp… o meglio rss di wp va benissimo, è validato etc etc… mentre feedburner mi da in risposta diversi errori che non riesco proprio ad isolare, 502/500 e chi piu’ ne ha piu’ ne metta.

    Premetto che ho già tentato le soluzioni proposte nella discussione e elenco una soluzione potrebbe funzionare:

    RewriteEngine on
    RewriteCond %{HTTP_USER_AGENT} !FeedBurner [NC]
    RewriteCond %{HTTP_USER_AGENT} !FeedValidator [NC]
    RewriteRule ^feed/?([_0-9a-z-] )?/?$ http://feeds.feedburner.com/YOURFEEDNAME [R=302,NC,L]

    Ma tale codice andrebbe inserito nel file .htaccess che tutti conosciamo e stimiamo, ma ahimè ora, al momento non ho la possibilità di accedervi e soprattutto modificarlo (ci sono problemi burocratici, sembra di stare alla STASI o al MINCULPOP).

    Quindi fino a quando non mi sarà possibile sarei orientato ad una soluzione tampone, ovvero usare un altro plugin di rendirizzamento.
    Il problema è che quelli che ho visionato non mi danno molta affidabilità…
    Mi chiedevo se qualcuno ha dei suggerimenti… Ah… giusta info per ora sto usando “FD Feedburner Plugin”, grazie e saluti a tutti, molto interessante la discussione.

    2 dicembre 2010, 15:17
  5. scaso

    Non ho nemmneo leto l’articolo.. ho risolto prima ^_^
    però vi dico che sul file function.php avevo una riga di nota prima del tag <?xml
    mi è bastato cancellarla, tutto risolto.
    <?xml deve essere nella priam riga.

    Come scoprirlo… quando apri il tuo rss e ricevi l'errore già ti indica la riga dove hai l'errore.
    Se non bastasse usate http://feedvalidator.org e riceverete l'errore servito..

    Spero di aiutare tutti e di essere stato utile scusate se non leggo son sempre di corsa… ciao.

    10 agosto 2010, 21:48
  6. mik

    Io avevo lo stesso problema degli spazi, ho fatto la modifica e ora devo aspettare. Ma quanto tempo ci mette più o meno il sitema ad aggiornare la cache?

    Grazie

    14 maggio 2010, 19:01
  7. Max

    Ciao Ghido! Dopo avere avuto un problema con il database, ho dovuto ripristinarlo e ho notato che il feed RSS non andava più nonostante tutto fosse tornato alla normalità. Grazie per i consigli, li ho seguiti alla lettera e ho anche provato con il plugin fix-rss-feed però non riesco a risolvere. Questo è il link del mio feed: http://feeds2.feedburner.com/creativebubbles

    Spero tu possa aiutarmi, grazie!!!

    18 aprile 2010, 11:28
  8. ciao sono giuseppe, ho un problema su wordpress, nella bacheka mi appare questo errore: Warning: file_get_contents(http:) [function.file-get-contents]: failed to open stream: No such file or directory in /home/prestitifinanziamentimutui.com/public_html/wp-includes/class-feed.php on line 97

    Ho già reinstalllato wordpress 5 volte ma senza risultati, praticamente il feed del blog non funziona, ho letto questo tuo articolo, e non so se la soluzione che proponi è valida anche nel mio caso, potresti aiutarmi perfavore?

    grazie giuseppe

    21 marzo 2010, 17:34
  9. Ti ringrazio moltissimo del tuo aiuto, adesso tutto funziona alla perfezione! Ho pubblicato un articolo anche per ringraziarti: http://www.appletribu.com/?p=2629

    Cordialmente,
    Paolo

    28 febbraio 2010, 19:41
    • Benone!! Questo è uno degli articoli più apprezzati.. 😀
      Grazie per la citazione del tuo articolo 😉

      1 marzo 2010, 16:59
      • eh si, perché purtroppo è un problema piuttosto noioso che vedo colpisce molti utenti WordPress…me compresa 🙂 Tra l’altro ogni aggiornamento è la stessa storia, se non te lo ricordi rischi di perdere dei lettori. Non capisco come mai non risolvano loro aggiungendo preventivamente quella stringa :/

        1 marzo 2010, 22:31
  10. Ti scrivo per ringraziarti vivamente.. problema risolto grazie a te. Grazie ancora!

    17 novembre 2009, 21:41
    • Sono contento che questo articolo abbia aiutato così tanta gente 😀

      18 novembre 2009, 13:23
      • Decisamente si! Io ogni nuovo aggiornamento di WordPress mi prevengo ed applico le modifiche hai segnalato 🙂

        18 novembre 2009, 14:10
  11. Ti amo.

    29 ottobre 2009, 20:18
    • Vabbé, aggiungo qualche altro dettaglio sennò mi prendete per pazzo xD

      Ho passato la giornata intera cercando di risolvere sto problema. Attiva, disattiva, aggiorna, fai, google. Alla fine sono capitato qui ed ecco una soluzione efficace.

      Purtroppo c’è da modificare il core di wordpress, ma in fondo è una modifica minima e tutto sommato sopportabile.

      Grazie molte.

      29 ottobre 2009, 20:28
      • LOL, avevo immaginato qualcosa del genere 😀
        Evvai, un altro utente WordPress salvato dalla pazzia, grazie a questo articolo! Sono contento 😉

        29 ottobre 2009, 20:48
  12. Buongiorno,
    avevo risolto tempo fa il problema dei feed con ob_clean(); secondo il suo suggerimento. Ma mi sono accorto ieri che il feed è tornato a mandare il solito messaggio di errore. Ho passato la notte a disattivare-riattivare i plugin, togliere le righe vuote prima di “” : nulla da fare! Ho installato “Fix RSS Feeds” ma non funziona (quando lo avvio mi da come output una pagina bianca). Ho fatto tutti i ping e resync di Feedburner..
    Vista l’abilità che ha dimostrato nei suoi articoli, mi rivolgo quindi a lei (e ai suoi lettori): per caso le è rimasto qualche coniglio da tirar fuori dal cilindro?
    Grazie

    17 settembre 2009, 09:41
  13. Ghido credo tu abbia risparmiato giorni e giorni di bestemmie…possiamo dire che hai salvato la mia anima! 🙂 Per fortuna appena i feed hanno cominciato a generarmi quell’errore sono subito incappata nel tuo post. Risolto in 5 minuti. Grazie, ciao

    23 giugno 2009, 22:26
    • Meno male! Ma ti sei fiondata sul mio blog o ci sei incappata tramite Google? Cos’hai cercato?

      24 giugno 2009, 01:28
      • Ho cercato con Google, conosco bene il tuo blog (tra l’altro ti leggo anche via feed ma quest’articolo mi era scappato). Ho cercato “feedburner Errore interpretazione XML” e sono arrivata subito qui 🙂 meno male!

        24 giugno 2009, 10:22
        • Ottimo! Merito di Google che mi ha letto il testo “alt” dell’immagine 😀

          24 giugno 2009, 14:13
  14. ho risolto installando questo plugin:
    http://wordpress.org/extend/plugins/fix-rss-feed/faq/

    25 maggio 2009, 19:52
    • Ad ogni modo grazie mille dell’aiuto. Di questi tempi pure sui forum ufficiali è difficile riceverne 🙂

      25 maggio 2009, 23:56
      • Ghido

        Wow, grande! Grazie della segnalazione, di sicuro tornerà molto utile a tutti quelli che non riusciranno a sistemare col mio sistema.

        Qui su BigThink troverai sempre aiuto, nel limite delle mie capacità almeno. Infatti più di quanto già ti avevo scritto, non sapevo che altro fare ^^

        26 maggio 2009, 00:38
  15. Ghido

    Mmmm… ops.. ero io a dover cancellare la cache…
    Ora vedo l’errore pure io…

    Ma il codice dove l’hai inserito? Il tuo feed dovrebbe risultare così:

    <?php
    /**
     * RSS2 Feed Template for displaying RSS2 Posts feed.
     *
     * @package WordPress
     */

     
    ob_clean();
     
    header('Content-Type: text/xml; charset=' . get_option('blog_charset'), true);
    25 maggio 2009, 18:39
    • e infatti è proprio così…

      25 maggio 2009, 19:25
  16. veramente mi esce l’errore anche su http://www.black-cat.it/blog2/?feed=rss2

    25 maggio 2009, 15:57
    • Ghido

      Allora boh… Mi arrendo.
      Io lo vedo correttamente. Chiedi ad altre persone come lo vedono.

      25 maggio 2009, 16:45
      • Ho chiesto ad un paio di amici e anche da loro esce l’errore….

        25 maggio 2009, 18:25
        • Ghido

          Allora ho un browser magico che mi fa vedere anche le cose che non vanno XD

          Prova a registrarlo su Feedburner e vedi se lo accetta o se dà problemi.

          25 maggio 2009, 18:28
          • boh a quanto pare 😛 che browser usi

            25 maggio 2009, 18:33
  17. Ciao.
    Ho fatto come hai detto nel tuo post ma purtroppo il problema permane. Non ho nemmeno un plugin attivo quindi non so dove sbattere la testa 🙁
    Puoi aiutarmi?

    25 maggio 2009, 14:53
    • Ghido

      Perchè? Qual’è il problema? Il tuo feed funziona.

      25 maggio 2009, 14:56
      • A me esce quell’errore Oo come è possibile

        25 maggio 2009, 15:07
        • Ghido

          Magari hai risolto col mio metodo, ma hai in cache ancora il vecchio feed.
          Prova a cancellare la cache del browser e a ricaricare la pagina.

          25 maggio 2009, 15:12
          • Ho anche cancellato la cache ma Firefox continua a resituirmi quell’errore…

            25 maggio 2009, 15:43
          • Ghido

            Ah, ecco, ho capito! Io guardavo http://www.black-cat.it/blog2/?feed=rss2 dove invece hai sistemato.
            Ora utilizza il mio trucchetto anche sul file feed-rss.php per sistemare anche http://www.black-cat.it/blog2/?feed=rss.

            In realtà non servirebbe nemmeno, perchè basta ottimizzare con FeedBurner il primo feed 😉

            25 maggio 2009, 15:49
  18. Annamaria

    Ma sei un grande!!!!!

    Mi hai fatto risolvere in 2 secondi un problema che mi ha incasinato la testa!

    Vorrei solo aggiungere che se vi dà problemi anche il feed dei commenti, la soluzione è sempre quella indicata da Ghido!!

    Il file da editare in questo caso è wp-includes/feed-rss2-comments.php

    Grazie Ghido!

    4 maggio 2009, 22:58
    • Ghido

      Di nulla, è un piacere 😉

      5 maggio 2009, 00:40
  19. :mrgreen:

    Guarda, non sono un test affidabile.

    Il feed era fermo al 28 febbraio, semplicemente non prendeva più i nuovi post.

    Me ne sono accorto solo l’altro ieri, però. :roll:

    Mi sembra assurdo l fatto che da un giorno all’altro abbia smesso di funzionare, quindi sicuramente c’è una causa… ma sinceramente non credo si averla intuita.

    Ne ho provate diverse, non escluso il controllo di righe bianche, la disattivazione dei plugin etc etc.

    Alla fine ho seguito le indicazioni (ero diperato) di questo post: http://www.brightcherry.co.uk/scribbles/2008/07/22/wordpress-rss-feed-is-empty-bug-fix/

    Che propone una soluzione … assurda….. 😯 … anche perchè fino al 28 febbraio aveva funzionato…. in ogni caso.

    Ti fa aggiungere uno slash per regolare il percorso dilcuni file che ragolano i feed in wp.

    La modifica è per il file rewrite.php, nella cartella wp-includes.

    Pare – veramente non posso garantirlo – che questo sia un fix che riguarda i blog installati in cartelle diverse dalla root, come nel mio caso.

    E – come può capitare di leggere in giro – non funziona immediatamente.

    Devi aspettare un paio di decine di minuti che non-so-quale-cache si svuoti.

    Ma veramente mi è capitato di incontrare decine di casi diversi, e altrettante soluzioni azzardate.

    Tutto è bene quel che finisce… con grande fatica e stress… bene.

    Ti saluto Ghido.

    28 aprile 2009, 05:49
    • Ghido

      Insomma… un bel casino! XD
      Grazie per aver condiviso la tua soluzione, chissà che non torni utile a qualche lettore disperato di passaggio 🙂

      28 aprile 2009, 11:54
  20. 🙁

    Proprio ieri sera mi sono accorto di essere afflitto da un problema molto simile – se non del tutto identico. E da ben due mesi – a quanto pare ( :roll: … e va beh, sono distratto…).

    Ho appena risolto il bug, però non seguendo il tuo fix.

    Avrai infatti notato che moltissime istanze similari sono state segnalate su wordpress.org negli ultimi due mesi. E sinceramente se ne sentono di tutti i colori, pare che ognuno riesca – o non riesca, nei casi peggiori- a trovare una sua soluzione ‘sui generis’.

    Il problema degli ‘spazi bianchi’ è effettivamente uno dei più quotati in giro, ma non sempre appare risolutivo ( 😥 non nel mio caso, almeno).

    😆

    Ma con un po’ di pazienza la soluzione si trova sempre… in bocca al lupo a chiunque si imbatta in questo problemaccio…non demordete, mi raccomando… 😉

    27 aprile 2009, 14:17
    • Ghido

      Giusto per curiosità, qual era il problema del tuo feed e come hai risolto?

      27 aprile 2009, 14:30
  21. Martin

    Complimenta, per il suo esritto, ma lei letto questo su gHacks senza link, questi e scorretto.

    15 aprile 2009, 04:08
    • Ghido

      No, non l’ho trovato su gHacks (che non conosco), ma mi sono inventato io come risolverlo.

      15 aprile 2009, 07:48
      • Martin

        molto estrano perche anche in gHacks noi escritto lo stesso uguale post in stesso giorno.

        15 aprile 2009, 18:24
        • Ghido

          Ora ho guardato e l’unico articolo simile che avete scritto è questo, ma non c’entra niente con quello che ho scritto io.
          Il mio articolo parla di un problema che IO ho avuto col feed di WordPress e di come sono riuscito a risolverlo.

          16 aprile 2009, 12:18
  22. Io tengo il post da parte, non si sa mai 😀

    14 aprile 2009, 19:35
    • Ghido

      Già, purtroppo è un problema che succede spesso. Tra l’altro ancora non ho scoperto quale sia il plugin fallace…

      15 aprile 2009, 07:50
  23. Interessante, io però credo di essere affetto da un problema da cui non esco fuori. Dal mio sito mi vengon ofuori solo feed parziali. Ho controllato tutto, nessun settaggio per feed parziale nemmeno su feedburner dove ho reindirizzato il feed.
    Ho reinstallato WP, disintallato plugin e reinstallato uno per volta… non ne vengo fuori.
    Magari te hai qualche idea.
    grazie

    14 aprile 2009, 16:42
    • Ghido

      Prova a mettere http://www.artoong.net/feed come sorgente del feed per feedburner e non http://www.artoong.net/feed/rss.
      Infatti il primo è l’RSS versione 2.0, mentre l’altro è la 0.92. Così dovrebbe mostrarti tutto il contenuto.

      Ciao 😉

      14 aprile 2009, 16:50
      • ti ringrazio molto, funziona. Mi sono sentito uno scemo…la cosa più semplice è banale come al solito era la soluzione del problema.
        grazie ancora

        15 aprile 2009, 11:54
        • Ghido

          Ehehe, felice di esserti stato utile 😉

          15 aprile 2009, 11:56
  24. Ottima soluzione, ti ringrazio per averla condivisa, ho proprio questo problema su uno dei miei blog e dopo aver seguito il tuo iter ho risolto!

    Grazie 😉

    14 aprile 2009, 14:31
    • Ghido

      Ottimo! Io ci ho perso le notti per trovare la causa e risolverlo XD

      14 aprile 2009, 14:35

10 Citazioni