WordPress RSS FEED开头空行导致错误的解决方案

今天我发现我博客RSS FEED 出问题了。。 各大浏览器均无法使用RSS订阅,看来她傲娇了…. 喵的个咪的!!

 

 

 

This page contains the following errors:

error on line 2 at column 6: XML declaration allowed only at the start of the document

Below is a rendering of the page up to the first error.

 

 

出现以上提示,得到是 首行空白提行。原因不明。。。

参考各种解决方法 最终我还是搞定了。 得到的最终祸首就是他 – > 某PHP里面有空行 

那么开始我尝试使用一个叫做rss feed fix的插件修复了下 似乎效果没有。 不知道是缓存了还是怎么回事反正就是没有。。

然后不爽的把它删掉了。。。 

接下来我关闭了缓存插件。

各大博客都提到某PHP里面有空行我就在回想我自己改了什么东西,突然我想起我动了那个邮件自动回复的,他在哪里,他在主题支持函数里面。。functions.php  对就是这个。,。。

果断找到我邮件函数的开头和结尾,他奶奶的熊,果然后面一看就发现一个空白的行。

果断和谐他后。终于问题解决。。。

下面是我之前做过的一些工作

1.关闭所有的插件  -> 无效

2.临时性把最近更新的文章丢入回收站 -> 无效

3..设置-阅读里面试着随意修改编码和同步更新 ->无效

4.使用插件来修复 -> 因为我Wordpress程序并没什么问题,只是主题出错了,所以还是 –>无效

# 知道什么叫做各种无效么,看上面那些你就知道了…

5.最后回想了下我最近修改了那些主题PHP 成功找到空白提行所在 并XXOO掉. 问题解决

如何判断空白提行?

打开PHP文件你应该能可那件很多类似-><?php?>的语句 检查 <?   ?>前面后面有没有空白提行 

问题解决方案总结:

首先第1件事情就是关闭你的缓存插件

一.如果你最近改了 wp-config 那种 非主题插件的php文件 你可以试着使用插件来修复. (插件名字:Fix Rss Feeds
1.下载插件并安装 先点击check然后点击下面的fix 
2.然后继续刷新feed 看看问题还在不。如果问题解决则说明修复完成 如果问题还在 那很可能是主题问题。
2.1 如果你觉得不爽 你可以点击下面那个还原 来还原… (作者做这个插件似乎有玩黑链的嫌疑,大家可以点击上面的那个捐助下面的none来停止掉或者用后即删)

二.回想你最近修改的PHP 找到空行 并干掉他。

1.用你的大脑回忆你最近改了什么PHP

2.找到空白地方干掉即可。。 问题解决

参考资料

 

Solution

PHP also uses a similar notation: <?php … ?>. Note that the final php ?> should be omitted from all PHP code files—modules, includes, etc. The closing delimiter is optional in PHP (but not in XML), and removing it helps prevent unwanted white space at the end of files which can cause problems with your feeds.

Check your wp-rss2.php and wp-atom.php files for blank lines outside of <? and ?> bracketed sections.

Check your wp-config.php file for blank lines outside of <? and ?> bracketed sections.

Check your theme’s functions.php file for blank lines outside of <? and ?> bracketed sections.

One by one, disable plugins and revalidate until you isolate the one causing the problem.

具体方法为:

1.检查你的wp-rss2.php文件和wp-atom.php文件中的<?至?>程序段中是否存在空行,如有请删除。

2.检查你的wp-config.php文件<?至?>程序段中是否存在空行,如有请删除。

3.检查你的主题中functions.php文件<?至?>程序段中是否存在空行,如有请删除。

4.按以上顺序操作,直至问题解决,再不行只有就挨个关闭你的插件试试了。

附加:如果你还没解决问题,那你还是多信春哥吧!

发布者

Zmsky

http://xloli.net/?page_id=11

《WordPress RSS FEED开头空行导致错误的解决方案》上有41条评论

      1. 你先把所有的插件关闭 看看有没有问题 如何没问题了 那就是插件问题。如果还有那你换成默认的主题。如果问题解决就是主题问题,如果还有 那请重装程序或者自己挖掘出来修改吧。

        1. Zmsky :你先把所有的插件关闭 看看有没有问题 如何没问题了 那就是插件问题。如果还有那你换成默认的主题。如果问题解决就是主题问题,如果还有 那请重装程序或者自己挖掘出来修改吧。
          VN:F [1.9.1_1087]Rating: 0 (from 0 votes)

          我到其他的主机上搭了个空的,到wordpress后台导入了这边的文章、评论的备份后就出现这个问题勒。
          这样我连重新安装换主机都没辙了啊

          1. 我看了你的博客,似乎你的RSS FEED不是开头空行,问题是出在114行 根据我检测,我发现你XML存在一个 HTML代码,这不符合规矩的,估计是你文章或者你装了什么插件吧?或者你的主机有广告。
            你打开你的博客RSS FEED 然后点击查看源代码 然后你看最下面你就知道了。。

          2. 你看你XML < /r s s > 这里下面的语句你就知道了。我估计是广告或者你用了什么插件或者什么主题统计代码什么的。。。

    1. 你确定是开头空白? 你看下面那位朋友 可能是主机的广告还是什么插件导致 最底部被注入了一些代码。

  1. 我删除了《杂念。。爱。勇气》这里面的虾米网的播放代码,那是html代码,然后停用了所以的插件了,现在错误到了112行去了
    %xyq30

    1. 那我告诉你一个方法吧,你这样,先备份你的所有数据。然后你新开一个站。当然也要是在你现在的空间里面。
      新开一个站后你再看看RSS方面,如果还有问题肯定是空间问题了。
      我百度了下 这个问题别人也有 问题都是 免费空间的广告。 我当时玩Godaddy就是有这样的问题

  2. Zmsky :那我告诉你一个方法吧,你这样,先备份你的所有数据。然后你新开一个站。当然也要是在你现在的空间里面。
    新开一个站后你再看看RSS方面,如果还有问题肯定是空间问题了。
    我百度了下 这个问题别人也有 问题都是 免费空间的广告。 我当时玩Godaddy就是有这样的问题
    VN:F [1.9.1_1087]Rating: 0 (from 0 votes)

    嗯,我试试~
    需要完全备份mysql的数据么?还是说只在wordpress后台的工具导出文章、评论这就OK?

    1. 网站所有数据包括数据库。然后你把所有的东西都删掉 然后重装。。
      或者 做一个子目录 然后丢程序进去。。

  3. Zmsky :网站所有数据包括数据库。然后你把所有的东西都删掉 然后重装。。
    或者 做一个子目录 然后丢程序进去。。
    VN:F [1.9.1_1087]Rating: 0 (from 0 votes)

    发布了一边新博文,突然间RSS订阅有回复了 %xyq64
    真的是无语言勒~所以插件还是运行的呢,懂都米懂~呵呵
    但愿如此的顺畅下去~

发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据