利用Fix Rss Feeds插件修复WordPress的Feed显示错误


Posted in PHP onDecember 19, 2015

今天突然有个网友留言说博客的Feed挂了,症状如下:

Chrome直接打开订阅页面显示如下:

This page contains the following errors:

error on line 1 at column 1: Document is empty

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

FeedDemon提示:此Feed包含错误。

添加后也没什么影响,能正常使用。

鲜果阅读器也可阅读,但是没有获取到最新的文章。

用IE试了下,显示“文档顶层存在无效内容。”

查看源代码发现是能看到HTML格式解析后的内容,这说明WordPress的Feed输出是没有问题的,出问题的在于某个文件的格式。不过要找到是哪个文件出问题就比较难了。网上给出的解决方法大致都是这样的:

检测上、下是否有多余的回车、换行符号

1、检测 wp-config.php 文件,查看PHP主体之外的代码有无回车符;

2、同上,检测 wp-rss2.php,wp-atom.php文件,如果最近没修改过,可略过;

3、同上,检测 functions.php 文件;

4、注意 feed是有缓存的,在修改完成之后,发一篇文章,使WP程序重建feed,从而查看效果;

5、若仍然有错,可以尝试暂时关闭所有插件,更换主题等逐个排除。

把上述文件都修改了个遍,还是没有头绪。。于是装了个插件“Fix Rss Feeds”,启用后修复一下就搞定了。而且修复之后把插件删了也不会反弹~

研究了下这个插件,似乎只是修改了WordPress根目录下的wp-blog-header.php,其实只需将这个文件改为:

<?php
/**
 * Loads the WordPress environment and template.
 *
 * @package WordPress
 */

if ( !isset($wp_did_header) ) {
 $wp_did_header = true;
  ob_start(); //2010-09-18 gofunnow.com added, it will Fix rss feed error "Error on line 2: The processing instruction target matching "[xX][mM][lL]" is not allowed." while burn feed from feedburner.com
 require_once( dirname(__FILE__) . '/wp-load.php' );
  ob_end_clean(); //2010-09-18 gofunnow.com added, it will Fix rss feed error "Error on line 2: The processing instruction target matching "[xX][mM][lL]" is not allowed." while burn feed from feedburner.com
 wp();
 require_once( ABSPATH . WPINC . '/template-loader.php' );
}
?>​

就可以了。

PHP 相关文章推荐
php HtmlReplace输入过滤安全函数
Jul 03 PHP
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法
Apr 25 PHP
深入分析php中接口与抽象类的区别
Jun 08 PHP
解析php类的注册与自动加载
Jul 05 PHP
php轻松实现中英文混排字符串截取
May 28 PHP
ThinkPHP模板替换与系统常量及应用实例教程
Aug 22 PHP
PHP按指定键值对二维数组进行排序的方法
Dec 22 PHP
PHP实现四种基础排序算法的运行时间比较(推荐)
Aug 11 PHP
PHP+Redis开发的书签案例实战详解
Jul 09 PHP
PHP使用redis位图bitMap 实现签到功能
Oct 08 PHP
Yii框架视图、视图布局、视图数据块操作示例
Oct 14 PHP
PHP大文件及断点续传下载实现代码
Aug 18 PHP
WordPress中Gravatar头像缓存到本地及相关优化的技巧
Dec 19 #PHP
CentOS下与Apache连接的PHP多版本共存方案实现详解
Dec 19 #PHP
PHP程序中使用adodb连接不同数据库的代码实例
Dec 19 #PHP
php实现面包屑导航例子分享
Dec 19 #PHP
php实现倒计时效果
Dec 19 #PHP
Thinkphp实现自动验证和自动完成
Dec 19 #PHP
详解WordPress中过滤链接与过滤SQL语句的方法
Dec 18 #PHP
You might like
PHP支持多种格式图片上传(支持jpg、png、gif)
2011/11/03 PHP
PHP常用技巧总结(附函数代码)
2012/02/04 PHP
php存储过程调用实例代码
2013/02/03 PHP
ThinkPHP中__initialize()和类的构造函数__construct()用法分析
2014/11/29 PHP
PHP实现自动识别原编码并对字符串进行编码转换的方法
2016/07/13 PHP
PHP5.6读写excel表格文件操作示例
2019/02/26 PHP
Thinkphp自定义生成缩略图尺寸的方法
2019/08/05 PHP
使用Post提交时须将空格转换成加号的解释
2013/01/14 Javascript
jQuery.extend()、jQuery.fn.extend()扩展方法示例详解
2014/05/08 Javascript
javascript创建动态表单的方法
2015/07/25 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
JS实现支持多选的遍历下拉列表代码
2015/08/20 Javascript
实现JavaScript的组成----BOM和DOM详解
2016/05/18 Javascript
D3.js实现折线图的方法详解
2016/09/21 Javascript
JavaScript字符串检索字符的方法
2017/06/23 Javascript
详解使用webpack构建多页面应用
2017/12/21 Javascript
react redux入门示例
2018/04/19 Javascript
修改node.js默认的npm安装目录实例
2018/05/15 Javascript
JS中min函数实例讲解
2019/02/18 Javascript
如何在JavaScript中正确处理变量
2020/12/25 Javascript
Vue 修改网站图标的方法
2020/12/31 Vue.js
python 生成器生成杨辉三角的方法(必看)
2017/04/10 Python
安装Python的教程-Windows
2017/07/22 Python
详解js文件通过python访问数据库方法
2019/03/03 Python
python IDLE 背景以及字体大小的修改方法
2019/07/12 Python
PyQt5中多线程模块QThread使用方法的实现
2020/01/31 Python
python使用re模块爬取豆瓣Top250电影
2020/10/20 Python
pycharm实现猜数游戏
2020/12/07 Python
Python中全局变量和局部变量的理解与区别
2021/02/07 Python
比利时香水网上商店:NOTINO
2018/03/28 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
2014年大学生职业规划书:未来不是梦,只要勇敢冲!
2014/09/22 职场文书
妈妈再爱我一次观后感
2015/06/08 职场文书
2015最新婚礼主持词
2015/06/30 职场文书
JAVA长虹键法之建造者Builder模式实现
2022/04/10 Java/Android
mysql函数之截取字符串的实现
2022/08/14 MySQL