有一位朋友网站碰到了这么一个问题,准备sitemap.xml提交到百度,用的是google xml sitemap 插件生成,打开xml时报了错误“This page contains the following errors:”,跑来问我怎么解决,我想会不会是插件问题,后来换了Smart SEO tool,问题依旧,换其它浏览器也一样。
后来查了度娘,说是xml文件格式错误,文件头部有空格导致的,于是我把他的sitemap.xml另存到电脑打开,确实是有两行空格:
问题可能出在代码里面,于是找到了Smart SEO Tool里面这段输出XML的代码:
public static function parse_request($wp){
if(!isset($wp->query_vars['wb_sitemap'])){
return;
}
date_default_timezone_set(get_option('timezone_string'));
$param = $wp->query_vars['wb_sitemap'];
$xml = '';
if(empty($param)){
$xml = self::index();
}else{
$xml = self::content($param);
}
header('Content-Type: text/xml; ');
echo $xml;
exit(0);
}
很明显是没有清空缓存造成的,加上ob_clean();后问题解决。
public static function parse_request($wp){
if(!isset($wp->query_vars['wb_sitemap'])){
return;
}
date_default_timezone_set(get_option('timezone_string'));
$param = $wp->query_vars['wb_sitemap'];
$xml = '';
if(empty($param)){
$xml = self::index();
}else{
$xml = self::content($param);
}
ob_clean();
header('Content-Type: text/xml; charset=utf-8');
echo $xml;
exit(0);
}
猜你喜欢
- WordPress子分类页面使用父分类页面模板 (0.625)
- 解决宝塔面板安装Let’s Encrypt SSL证书后网站无法访问 (0.625)
- WordPress如何调用站外文章的精准解决方法 (0.625)
- WP-China-Yes:WordPress网站解决下载插件或更新时429问题 (0.625)
- WordPress发送邮件函数wp_mail使用详解 (0.625)