Google站点地图命名空间混乱

这里我的网站地图的结构:

<?xml version="1.0" encoding="UTF-8"?>
<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
    <sitemap>
        <loc>somefile.xml</loc>
    </sitemap>
</sitemapindex>

somefile.xml

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.google.com/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml">
<url>
  <loc>[some url]</loc>
  <link rel="alternate" hreflang="en" href="[some url]" />
  <link rel="alternate" hreflang="en" href="[some url]?lang=en" />
  <link rel="alternate" hreflang="fr" href="[some url]?lang=fr" />
  <priority>1.00</priority>
</url>

这是Google的错误消息:

您的站点地图或站点地图索引文件未正确声明名称空间。 预计:http://www.sitemaps.org/schemas/sitemap/0.9找到:http://www.w3.org/1999/xhtml标签:urlset

我想我错过了一些东西,因特网上的信息很混乱。 什么是正确的语法? 谢谢,如果你能帮忙。


通过替换解决的问题将xhtml命名空间添加到所有'链接'标签。

更换

<link

<xhtml:link 

您应该将xmlns="http://www.w3.org/1999/xhtml"添加到您的网址中:

<link rel="alternate" hreflang="en" href="[some url]" xmlns="http://www.w3.org/1999/xhtml" />
链接地址: http://www.djcxy.com/p/65711.html

上一篇: Google sitemap namespace confusion

下一篇: XML namespace handling in xslt