XMLサイトマップにエラー発生

Google XML Sitemapsは、クローラーにサイトの存在やコンテンツを知らせるためのプラグインです。検索エンジン向けのXMLサイトマップを自動生成して、検索エンジンに通知してくれます。


このプラグインを有効化しておけば、クローラーに効率良くコンテンツを見つけてもらえます。


ただ、エラーになっていると設置した意味がありません。そこで今回は、Google XML Sitemapsにエラーが発生したときの解決法を紹介します。


もし、Google XML Sitemapsの設定が完了していない場合は、下の記事を参考にしてみて下さい。


アドセンスブログの作り方|Google Search Concoleの登録と利用方法


まずはワードプレス管理画面の「設定」から「XML-Sitemap」をクリックします。

XML-Sitemap

赤枠で囲ったリンクをクリックします。

サイトマップのィンデックスファイルをクリック

この表示になっていれば、サイトマップの送信は成功です。

XML Sitemap Index

エラーになっていると、こう表示されます。

XMLエラー

この場合は、次の3つを確認してみて下さい。ただし、他のことが原因になっていることもあります。


  • ブラウザ
  • XMLファイルの先頭に余分な改行・文字・スペースが入っている
  • キャッシュ

(注)XMLファイルの先頭に余分な改行・文字・スペースが入っている場合、function.phpの編集が必要です。ただ、この作業をするときには、バックアップを必ず取ってくださいね。


というのは、修正を誤るとワードプレスの画面が真っ白になることがあるからです。ささいなことですが、バックアップはすごく重要です。


こちらもプラグインを使うと簡単にできるので、まだ設定が済んでいない方は、この記事を参考にしてみて下さい。


ワードプレス初心者向け|おすすめのプラグインと設定方法


ではさっそく、エラーを修正していきましょう。






それぞれのブラウザでチェックする

まずは、別のブラウザから確認してみてください。ブラウザによって、エラー表示になることがあります。ブラウザには「Google Chrome・Internet Explorer・Firefox」などがありますから、テストしていきます。


Google Chromeでテストした場合

This page contains the following errors:

error on line 1 at column 8: 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″?>


Firefoxでテストした場合

XMLパースエラー: 実体の初めにXMLまたはテキスト宣言がありません。
URL: https://xxxxx.com/sitemap/
行番号: 2, 列番号: 1:


どのブラウザでもエラー表示がでる場合は、functions.phpを確認します。


functions.phpの改行を確認する

どのブラウザでテストしてもエラー表示になるときは、functions.phpに改行やスペースが入っていないか調べてみます。functions.phpはサイトの構成部分になるので、バックアップを取って下さい。ここで失敗すると、修復が困難です。


では、ワードプレスの管理画面の左側にある「外観」から「テーマの編集」をクリックします。

テーマ編集-min

画面右側の「functions.php」をクリックします。

テーマのための関数を選択-min

まずはコードの最上部を見てみます。一番上の行から始まっていますね。

phpの始め-min

通常「<?php」は、一行目から始まります。でも、エラーがでてしまう場合、このように2行目3行目あたりから「<?php」が書き込まれていることがあります。そのときは余白を削除します。

phpの上部修正必要-minphpの上部修正必要-min

またコードの一番下も改行になっていることがあります。そこで「?>」の下にある「↓」を削除します。

phpの下部のスペースを削除-min

↓を消すとこうなります。

phpの下部修正-min

最後に「ファイルの更新」クリックします。

ファイルを更新-min

もう一度サイトマップのテスト送信をしてみます。先ほどと同じで、ワードプレス管理画面の「設定」から「XML-Sitemaps」をクリックします。


XML-sitemap-min

赤枠で囲ったところをクリックします。

サイトマップのインデックスファイル-min

サイトマップを送信して、XML Sitemap Indexが表示されれば、問題の解決です。

sitemap-min

ただ、当サイトは賢威テンプレートを使用しているのですが、この方法でもエラー表示は消えませんでした。そこで、賢威サポートチームから頂いた解決法を説明します。


functions.phpの改行やスペースをすべて削除しても問題が解決しない場合(賢威テンプレート編)

くどいですが、必ずバックアップをとって下さいね。バックアップがあれば、失敗しても慌てることにはなりません。画面が真っ白になったり、 Fatal errorが発生したりすることもあります。


ですので、バックアップは心からおすすめしています。ちなみに、Fatal errorとはファイルが破損しているときに出るエラーで、致命的な欠陥という意味です。このエラーが表示されるとがっくりします。気を付けて下さい。


賢威テンプレートのエラー表示を解消するには、functions.phpの一番下にある「?>」を削除します。


ただ、賢威テンプレートを使用していても、必ずこうなるということではありません。外観のカスタマイズの仕方に問題があったり、インストールしているプラグインが影響したりして、不具合が生じたのではないかと思います。


賢威テンプレートを利用していると、サポートチームからアドバイスを受ける特典が付いているので、本当に助かります。ブログに問題が発生してもその解決法をすばやく知ることができるので、賢威には感謝です。


ワードプレスの使い方に慣れていない方は「賢威」を利用してみてください。このテンプレートはおすすめです。




phpにコードを追加する

phpファイルにコードを追加すると、エラーを解消できることがあります。まずは、Firefoxを使ってサイトマップを送信します。

XMLパースエラー: 実体の初めにXMLまたはテキスト宣言がありません。
URL: https://xxxxx.com/feed/
行番号: 2, 列番号: 1:

するとドメインに続いて上のように「feed」が表示されました。この場合、以下の2つのファイルに次のコードを追加するとエラー表示が消えたという記事がありましたので、紹介しますね。


編集を加えるファイルは2つになります。


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

それぞれのファイルの「<?php」のすぐ下に「ob_end_clean();」を追加してください。(半角英数)

phpにコードを足す-min

反映されるまで時間がかかることもあるようです。少し時間をおいてから、エラーが消えているかどうか確認してみると良いと思います。


キャッシュを削除する

正しく修正を加えても、キャッシュの影響によって表示されないこともあります。キャッシュとは、閲覧したサイトのデータを保存しておいて、次に同じページを見たときにサックリ表示してくれる機能のことです。


これが原因で、エラー表示になることもありますから、ブラウザのキャッシュを削除していきましょう。

Google Chromeで閲覧履歴を削除する

まずは、Google Chromeから。画面右上の3つのぽっちをクリックして設定をクリックします。

googleの設定

画面を下にスクロールして「詳細設定」をクリックします。

詳細設定

また画面を下にスクロールすると「閲覧履歴を消去する」があるので、そこをクリックします。

閲覧履歴データを消去する

「削除(D)」をクリックします。

exploreの閲覧履歴を削除

Google Chromeのキャッシュの削除は完了です。

Internet Exploreで閲覧履歴を削除する

Internet ExploreはWindowsに標準設定されたブラウザです。画面右上の歯車から「セーフティ」をクリックして「閲覧履歴の削除」をクリックします。

internet exploreの閲覧履歴の削除

「削除」をクリックします。

internet exploreの閲覧履歴を削除する

Internet Explorerのキャッシュの削除は完了です。

Fire Foxで閲覧履歴を削除する

画面右上の三本横線をクリックしてから「オプション」をクリックします。

firefoxのオプション

「プライバシーとセキュリティ」をクリックします。

firefoxのプライバシーとセキュリティfirefoxのプライバシーとセキュリティ

画面を下にスクロールして「キャッシュされたウェブページ」の「今すぐ消去」をクリックします。

firefoxのキャッシュされたウェブ

「サイトデータ」の「すべてのデータを消去」をクリックします。残しておきたいデータがある場合は「設定」をクリックして削除したいデータだけを選択することも出来ます。

firefoxのサイトのデータ

「今すぐ消去」をクリックします。

firefozの今すぐ消去

これでFirefoxのキャッシュの削除は完了です。

Safariで閲覧履歴を削除する

SafariはMacに標準搭載されたブラウザです。まずはSafariを開いて画面の上部にある「開発」をクリックします。

開発

「キャッシュを空にする」をクリックします。

キャッシュを空に

これでSafariのキャッシュの削除は完了です。

さいごに

google XML Sitemapsにエラーが発生したときの解決法は、それぞれのサイトで問題が異なるため、解決できないことがあるかと思います。初心者がアフィリエイトで稼ぐには、サポート付きのテンプレートがおすすめです。


良いテンプレートはいくつもありますが、問題が生じたときでも、すぐに解決できるテンプレートのほうが効率よく作業ができます。


また、外観のテーマに編集を加えるときには、バックアップを必ず取っていきましょう。バックアップを自動でしてくれるプラグインは、こちらの記事で紹介しています。参考にしてみて下さい。


アフィリエイトサイトの作り方|便利なツールとソフトの紹介(初心者編)