エラー内容
XMLファイルの先頭に余分な改行、スペースが入ってしまっているため、各種ブラウザにてエラーが発生。
Firefoxでフィードを表示した場合XML パースエラー: 実体の初めに XML またはテキスト宣言がありません。
URL: http://kngy.net/feed/
行番号: 2, 列番号: 1:
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
wp-includes/feed-rss2-comments.php
編集内容それぞれのファイルの2行目に、「ob_end_clean();」を追加。
< ?php
↓
< ?php
ob_end_clean();
その他注意点
少なくともFirefoxとGoogle Chromeでは、変更が反映されていても、キャッシュが原因で、リロードしてもエラー表示のままという現象を確認しております。
変更を行ってもだめだったと他の方法を探す前に、ブラウザの設定でキャッシュをクリアし、今一度確認を行うことをおすすめします。
http://kngy.net/ さんから引用させていただきました。