我的博客Feed今天显示错误:
此页面包含以下错误:
第6行第2行的错误:仅在文档开头允许XML声明
下面是第一个错误的页面呈现
答案 0 :(得分:5)
您的xml文档以换行符开头。
答案 1 :(得分:3)
这是我找到的解决方案 首先,您需要在wordpress根字典上创建一个php文件(whitespacefix.php),内容如下。
<?php
function ___wejns_wp_whitespace_fix($input) {
$allowed = false;
$found = false;
foreach (headers_list() as $header) {
if (preg_match("/^content-type:\\s+(text\\/|application\\/((xhtml|atom|rss)\\+xml|xml))/i", $header)) {
$allowed = true;
}
if (preg_match("/^content-type:\\s+/i", $header)) {
$found = true;
}
}
if ($allowed || !$found) {
return preg_replace("/\\A\\s*/m", "", $input);
} else {
return $input;
}
}
ob_start("___wejns_wp_whitespace_fix");
?>
然后打开index.php文件,并在<?php
标签之后添加以下行
include('whitespacefix.php');
引用自here
答案 2 :(得分:0)
页面上的每个页面(包含的站点地图)在开头都包含空行。 (您可以看到HTML源代码)您应该删除此行以修复站点地图。您可以尝试以下步骤:
检查wp-config.php文件中括号内的空白行。
检查主题的functions.php文件,查看括号内的空白行。
逐个禁用插件并重新验证,直到找出导致问题的插件(如何检查插件冲突)
注意最后的php?&gt;应该从所有PHP代码文件中省略 - 模块,包含等等(例如,wp-config.php,functions.php,...)。
答案 3 :(得分:0)
主题或插件中包含的文件之一,在开始前有一个空白行
首先,停用所有插件,然后尝试加载sitemap.xml链接。如果现在可以使用,那么罪魁祸首就是您的插件之一。如果仍然无法正常工作,请继续...
第二,遍历组成WordPress主题的每个.php文件。寻找任何开始
第三,重新安装WordPress核心安装。如果仍然无法解决问题,请与开发人员联系以深入研究您的源代码。
答案 4 :(得分:-1)
如果您使用的是wordpress,那么在functions.php文件的最后一行必须有一个以上的空行。
只需删除这些空白行,错误就会消失。
如果您想了解有关错误的更多信息,请阅读以下文章: http://www.am22tech.com/fix-xml-declaration-rss-feed-error/