wordpressのRSSエラー対処法「XML パースエラー:実体の初めにXMLまたはテキスト宣言がありません。」

web制作

読了の目安時間: 234

wordpressで構築したサイトは「自分のURL/feed/」でブラウザ入力すると、RSSのfeed画面を確認できます。

0

しかし、構築したwordpressを編集したりしていると、たまにこんなエラーが出ることがあります。

2

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.

ブラウザをFirefoxで見てみると、「XML パースエラー:実体の初めにXMLまたはテキスト宣言がありません。」というエラーが出ています。

1

wordpressのRSSエラー対処法

結論としては、phpタグ前後の空白が原因であることがほとんどです。phpの宣言で、<?php ?>を使いますが、この開始タグや終了タグの前後に改行や空白があると、エラーを指摘されます。

大体の場合、function.phpなどを編集している時に多いエラーだと思います。自分の場合もfunction.phpの改行によるエラーでしたので、改行を削除したら元に戻りました。

基本的には、wordpressサイトを制作した時にエラーが起きていなければ、その後の修正作業によってエラーが起きている可能性が極めて高いです。バージョン管理などをしておき、どの作業によるエラーなのか、判断するようにしましょう。

他にはプラグインの導入によっても起きたりするらしいので、ソースコードをいじってないのにエラーが起きる時はプラグインをいったん停止してみることも大事です。

RSSエラー修正はfirefoxで確認しよう
空白削除した後、firefoxだとすぐにエラー修正が反映されましたが、Google Chromeでは少し反映までに時間がかかっていました。エラー修正をする際は、firefoxで見ておいたほうが良いかもしれません。

その他の解決法

普段の運営ではいじらないファイルですが、「wp-config.php」、「wp-rss2.php」、「feed-rss2-comments.php」などの空白も原因になることがあるようです。もし編集していたら、確認しておきましょう。

どうしてもfeedが反映されない時は、最終手段として、「ob_end_clean();」によるバッファクリアのコードを下記のファイルに適用すると、うまく動作するようになるみたいです。

wp-includes/feed-rss2.php
wp-includes/feed-rss2-comments.php

▼詳しくはこちらのサイト様へ
http://wadajuku.jp/archives/szk/20130417-2

まとめ

いかがでしたでしょうか。とりあえず「XML パースエラー:実体の初めにXMLまたはテキスト宣言がありません。」というエラーが出たら、php宣言タグの前後の空白を疑ってみると良いかと思います。

今読んだ記事をシェアする

rss_thumb

wordpressのRSSエラー対処法「XML パースエラー:実体の初めにXMLまたはテキスト宣言がありません。」

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

このブログサイトが参考になった人は、いいねボタン! 更新情報も受け取れます!

arrow
デル株式会社
  • Pocket
  • このエントリーをはてなブックマークに追加

キヨタツ

キヨタツ

WEBを中心に、色々な制作をする個人事業主です。過去、エンジニア&webディレクターで会社勤めをしていました。主に要件定義や構築が得意で、HTML/css/javascript/PHP/git/wordpress/MT/DB/photoshop/illustrator/fireworksなど扱えます。現在、サーバー・アプリなどを習得中です。性格は、自虐好きです。