首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >站点地图中的标签和标题问题

站点地图中的标签和标题问题
EN

Stack Overflow用户
提问于 2018-01-07 14:37:23
回答 1查看 234关注 0票数 0

我试图使一个新闻站点地图和站点地图文件打开良好,但在谷歌网站管理员工具测试中,它显示了两个错误:

  1. 无效XML标记
  2. 期望: Sitemap或Sitemap索引文件没有正确声明名称空间。Sitemap或Sitemap索引文件没有正确声明名称空间。预期:http://www.w3.org/1999/xhtml发现:http://www.sitemaps.org/schemas/sitemap/0.9

如有任何帮助,请提前感谢

代码语言:javascript
复制
header("Content-Type: application/xml; charset=utf-8");

echo '<?xml version="1.0" encoding="UTF-8"?>'.PHP_EOL; 

echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">' . PHP_EOL;

$base_url = "https://www.example.com";

while($row = mysqli_fetch_array($sitegrab))
{
    echo '<url>' . PHP_EOL;
    echo '<loc>'.$base_url.'</loc>' . PHP_EOL;
    echo '<news:name>'.$row['Website'].'</news:name>' . PHP_EOL;
    echo '<news:link>'.$row['Link'].'</news:link>' . PHP_EOL;
    echo '<changefreq>daily</changefreq>' . PHP_EOL;
    echo '<priority>1</priority>' . PHP_EOL;
    echo '</url>' . PHP_EOL;
}

echo '</urlset>' . PHP_EOL;
?>
EN

回答 1

Stack Overflow用户

发布于 2018-01-08 09:58:26

在将XML构建为文本时,请确保正确地转义特殊字符。例如,&很有可能成为&amp;的一部分,需要在XML中作为&amp;转义。

更好的解决方案是使用像XMLWriter这样的XML来创建XML。它会照顾好逃跑的人。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48138204

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档