web-dev-qa-db-ja.com

サイトマップ検証ツールが「lastmod」タグのエラーを返すのはなぜですか?

私の会社のブランドのウェブサイトのサイトマップは、一見したところ、うまく見えるようです。そのようなエラーは特に見られません。ただし、SEOツールであるSEMrushは、サイトマップが正しい形式ではないことを報告しています。 SEMrushは何が悪いのか教えてくれません。フォーマットが正しくないというだけです。

そこで、このオンライン検証ツールにサイトマップを提出しました。

https://www.xml-sitemaps.com/index.php?op=validate-xml-sitemap&go=1&sitemapurl=http%3A%2F%2Fwww.photojaanic.com%2Fsitemap.xml&submit=Validate+Sitemap

問題は見つかりませんでした。しかし、別のツールで実行すると:

http://tools.seochat.com/tools/site-validator/

lastmodタグに対していくつかのエラーを返します。それらの1つを次に示します。

<url><loc>http://www.photojaanic.com/photo-gifts/keychains</loc>
<lastmod>2017-07-24T04:37Z</lastmod><changefreq>yearly</changefreq></url>

エラー1826:要素'{http://www.sitemaps.org/schemas/sitemap/0.9}lastmod''2017-07-24T04:37Z'は、ユニオン型'{http://www.sitemaps.org/schemas/sitemap/0.9}tLastmod'の有効な値ではありません。行:5列:0

これがサイトマップが間違っている理由でしょうか?なぜ日時の形式が間違っているのだろうか。

別の検証ツールも試しました。その場合でも、lastmodの問題とともに多くのエラーが返されます。

http://freetools.webmasterworld.com/tools/site-validator

他のエラーはビデオや画像に関連しているので、私はそれほど心配していません。それを修正することができます。私が心配しているのは、lastmodタグに関するものです。

lastmodの問題を回避する方法は、単に時間を除外することです。ただし、エラーがある理由を知りたいです。

3
Anish Kuriakose

スキーマごとに、tLastModxsd:datexsd:dateTimeの結合です。

時間を指定するため、最初のケースではないため、文字列はXSD dateTimeタイプに準拠する必要がありますが、そうではありません。秒でパーツを指定する必要があります。

完全な形式については、 https://www.w3.org/TR/2012/REC-xmlschema11-2-20120405/#dateTime-lexical-mapping を参照してください。

したがって、2017-07-24T04:37:00Zを試してみると、この要素の検証エラーはなくなるはずです。

3
Patrick Mevzek

値が空でないことを確認してください。これをしばらくトラブルシューティングし、特定のエントリの「最終編集日」フィールドが空白であるため、特定のURLに何も入力されていないため、XMLファイルでマークアップエラーが発生していることに気付きました。

2
Luke Richardson

ツール http://tools.seochat.com/tools/site-validator/ は、秒も指定してもエラーになりません。

<lastmod>2017-07-24T04:37:00Z</lastmod>

日時に秒は必要ですか?仕様とスキーマに矛盾があります:

2
unor