WordPressのRSSエラー(XMLパースエラー)の対処法

WordPress 3.0.1特有のエラーでもないとは思いますが、本サイトのフィード表示でパースエラーが発生してしまったので、他で困っている方のためにも対処法を書き残しておきたいと思います。

エラー内容

XMLファイルの先頭に余分な改行、スペースが入ってしまっているため、各種ブラウザにてエラーが発生。

Firefoxでフィードを表示した場合

XML パースエラー: 実体の初めに XML またはテキスト宣言がありません。
URL: http://kngy.net/feed/
行番号: 2, 列番号: 1:
Google Chromeでフィードを表示した場合

This page contains the following errors:

error on line 2 at column 6: XML declaration allowed only at the start of the document
Below is a rendering of the page up to the first error.
Internet Explorerでフィードを表示した場合

Internet Explorer ではこのフィードを表示できません

このフィードにはコード上のエラーが含まれています。

詳細情報

無効な XML 宣言です。
行: 2 文字: 3
<?xml version="1.0" encoding="UTF-8"?>

対処方法

よく書かれている、functions.phpの編集や、プラグインの無効化では直りませんでしたが、wp-includes内にある2つのファイルへそれぞれ1行ずつ追加することにより、解決しました。

行った対応は、下記となります。

編集ファイル

wp-includes/feed-rss2.php
wp-includes/feed-rss2-comments.php
編集内容

それぞれのファイルの2行目に、「ob_end_clean();」を追加。

<?php
 ↓
<?php
ob_end_clean();

その他注意点

少なくともFirefoxとGoogle Chromeでは、変更が反映されていても、キャッシュが原因で、リロードしてもエラー表示のままという現象を確認しております。

変更を行ってもだめだったと他の方法を探す前に、ブラウザの設定でキャッシュをクリアし、今一度確認を行うことをおすすめします。

僕の場合、ブラウザの再起動を行っても、キャッシュによって反映が確認できませんでした。

1、2時間試行錯誤してしまいましたが、終わってみると、なんだかあっけなく感じますね。

 
このエントリーをはてなブックマークに追加  

このエントリをはてなブックマークに追加このエントリをdel.icio.usに追加このエントリをLivedoor Clipに追加このエントリをYahoo!ブックマークに追加このエントリをFC2ブックマークに追加このエントリをNifty Clipに追加このエントリをPOOKMARK. Airlinesに追加このエントリをBuzzurl(バザール)に追加このエントリをChoixに追加このエントリをnewsingに追加
コメントを残すには、Twitter、Facebook、Google、OpenID、Disqus の、いずれかのアカウントでの認証が必要となります。(各アイコンか「コメントする」ボタンを押すと認証ウィンドウが開きます)
  • http://www.drsato02.com satou

    ここ数日,まさにRSSエラーの修復に追われていました。
    先ほどググってこちらのサイトへ。
    何んともあっけなく回復しました!(5分)

    大変ありがとうございます。参考になりました!

  • kngy

    早速お役に立てるとは。書いた甲斐がありました。

    需要0かとは思うけど、という気持ちもありつつ、何かしらの役に立てたらという気持ちで書き残したこの投稿がお役に立てたことに、なんというか、今後続けていくことの一つの意味のようなものも感じられた気がします。

    こちらこそコメント残していただき、ありがとうございました。

  • http://blog.exceluck.com/ Hidden

    初めまして。
    僕もこのエラーが発生しましてググっていたらこちらに辿り着きました。
    ただ、僕の場合はここの方法を試してみたんですが今のところ改善されずでした・・・。
    経緯としてはRSSフィードをカテゴリを選別して配信しようとして、フィードのURLをいじった事でこのエラーが起こるようになりました。

    末尾を
    /?feed=rss2&cat=-カテゴリID
    といった感じに変更して、最初は問題なくフィードが取れて来ていた事を確認したんですが、数分後にこのエラーが出るようになりました。

    何かアドバイス頂ける事がございましたらご教授頂けると嬉しいです。

  • kngy

    どうもはじめまして。

    この問題、はまると厄介ですよね。

    下記修正を行うと解決するかもしれませんので、一度お試しください。

    [/wp-includes/feed-rss2.php]
    下記をコメントアウト
     <description>< ![CDATA[<?php the_excerpt_rss() ?>]]></description>

    [/wp-includes/feed-atom.php]
    下記をコメントアウト
     <summary type="<?php html_type_rss(); ?>">< ![CDATA[<?php the_excerpt_rss(); ?>]]></summary>

    [/wp-includes/feed-rdf.php]
    下記をコメントアウト
     <description><?php the_content_rss(”, 0, ”, get_option('rss_excerpt_length'), 2) ?></description>

  • Mad

    初めまして、朝からずっとこの問題に試行錯誤していました。
    やっと解決できてうれしいです。
    本当にありがとうございました!

  • kngy

    お役に立てて何よりです。
    記事にしておいて良かったと感じました。

    こちらこそコメントを残していただき、ありがとうございました。

  • hamp

    ハマっていたので助かりました。
    同じような問題に直面している人が多いようですね。

    有益な情報ありがとうございます

  • kngy

    僕も記事にしてみてわかったのですが、同じような問題で困っている方が結構いるもんですね。
    お役に立てて何よりです。
    記事にしておいて良かったと感じました。

    こちらこそコメントを残していただき、ありがとうございました。

  • http://stryh.heteml.jp/blog/2011/08/07/feed%E3%81%AE%E3%83%91%E3%83%BC%E3%82%B9%E3%82%A8%E3%83%A9%E3%83%BC%E5%AF%BE%E5%87%A6-wordpress%E3%81%AE%E3%83%88%E3%83%A9%E3%83%96%E3%83%AB%E3%82%B7%E3%83%A5%E3 Feedのパース..

    [...] WordPressのRSSエラー(XMLパースエラー)の対処法 – kngy.net [...]

  • http://www.khmerbrains.net/ja/2011/08/posts%e3%83%9c%e3%82%bf%e3%83%b3%e3%81%a7rss%e3%82%a8%e3%83%a9%e3%83%bc/

    [...] WordPressのRSSエラー(XMLパースエラー)の対処法 [...]

  • http://twitter.com/nisekoyoga Akira Ogasawara

    ありがとうございますー。ずっと放置していたのですが(RSSを読むような読者層ではないので)、おかげさまであっさり回復しました。
    感謝です。

  • 匿名

    本当に同じような問題で困っている方が結構いるもんですね。
    お役に立てて何よりです。

    コメントを残していただき、ありがとうございました。

  • http://kurox.net/wordpress/wordpress%e3%81%aerss%e3%81%8c%e3%82%a8%e3%83%a9%e3%83%bc%ef%bc%88xml%e3%83%91%e3%83%bc%e3%82%b9%e3%82%a8%e3%83%a9%e3%83%bc%ef%bc%89%e5%87%ba%e3%81%a6%e8%a1%a8%e7%a4%ba%e3%8

    [...] 念のため同時に以下をWordPressのRSSエラー(XMLパースエラー)の対処法 – kngy.netを参考に実施した。 編集ファイル wp-includes/feed-rss2.php wp-includes/feed-rss2-comments.php 編集内容 それぞれのファ [...]

  • http://twitter.com/shikimenco しきめんこ

    全く同じエラーで数日苦しんでいた所、こちらの記事に辿り着きました。おかげさまで無事解決することができました。本当にありがとうございました!

  • 匿名

    いえいえ。お役に立てて何よりです。

    コメントを残していただき、ありがとうございました。

  • http://vivo.asianima.info/note/wordpressrss.html

    [...] 参考にさせていただいたサイト→WordPressのRSSエラー(XMLパースエラー)の対処法 [...]

  • http://word-express.net/fix-rss-feed

    [...] 、『WordPressのRSSエラー(XMLパースエラー)の対処法』で紹介されているように、 [...]

  • http://homepage.haluri.com/blog/?p=245

    [...] らしく、 WordPressのRSSエラー(XMLパースエラー)の対処法にその対処方法が書いてありました。 [...]

  • http://twitter.com/teru03 teruo morimoto

    はじめまして。
    気になってたけど、放っておいたRSS問題を、気合いれて直そうととりくんだところ、おかげさまであっさり解決しました。
    ありがとうございました~。

  • 匿名

    昨年8月にこの記事をアップしてから、想像以上に多くの方が同じような問題に直面していることに驚いています。

    お役に立てて何よりです。
    コメントを残していただき、ありがとうございました。

  • http://www.gworks.jp/2012/03/wordpress-feed-error/ wordpressでRSS ..

    [...] WordPressのRSSエラー(XMLパースエラー)の対処法 [...]

  • http://twitter.com/MarueOutdoor 丸江 Marue

    大変参考になりました。ありがとうございました。

  • http://menuet.jp/diary/no-category/post157 RSS Feed «..

    [...] Googleで見つけたWordPressのRSSエラー(XMLパースエラー)の対処法での対処法を施してみましたが改善せず。 [...]

  • 匿名

    お役に立てて何よりです。

    コメントを残していただき、ありがとうございました。

  • http://wp.yat-net.com/?p=2956

    [...] kngy.netさんのWordPressのRSSエラー(XMLパースエラー)の対処法という記事で 「wp-includes内にある2つのファイルへそれぞれ1行ずつ追加する事で出来る解決方法」という事が書いてあり試しても見たんですが、これでも改善されず凄く困ってました。 [...]