PcInfoware Blog

19 Luglio 2009

Wordpress: risolvere il problema del feed non valido

Archiviato in: Soluzioni — Tag: , , — Linus @ 15:36

Recentemente ho notato che avevo un problema nella visualizzazione dei feed del sito. Il problema riguardava però la gestione dei feed da parte di wordpress e non di feedburner.

Infatti se premevo il link ai feed tramite la barra degli indirizzi di Firefox il browser mi segnalava un errore di interpretazione XML senza un apparente motivo.

Nello specifico, l’errore era il seguente:

Una giornata intera alla ricerca del problema. Tra i motivi sparsi in giro per la rete, quello che rappresenta maggiormente il problema di questo errore di interpretazione è dato dalla presenza di spazi bianchi all’inizio o alla fine di ogni file del nostro sito. Molto probabilmente questi spazi possono essere generati a causa di una qualche funzione che viene chiamata ad ogni caricamento. Una soluzione potrebbe essere quella di disabilitare i plugin uno a uno, per trovare il probabile plugin incriminato nella generazioni di questi spazi, ma per chi ha molti plugin questo diventa un faticoso lavoraccio.

Allora cosa ho fatto? Come risolviamo il problema?

Il modo migliore per risolvere è 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!

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.

Un altro problema risolto!… e come sempre tanta soddisfazione!

Alla prossima!

 

Funziona con WordPress