利用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中Cannot send session cache limiter 的问题的方法
Apr 27 PHP
MySql中正则表达式的使用方法描述
Jul 30 PHP
php面向对象的方法重载两种版本比较
Sep 08 PHP
PHP取得一个类的属性和方法的实现代码
May 22 PHP
使用Linux五年积累的一些经验技巧
Jun 20 PHP
php实现将任意进制数转换成10进制的方法
Apr 17 PHP
php无限级分类实现方法分析
Oct 19 PHP
PHP多维数组元素操作类的方法
Nov 14 PHP
PHP开发APP端微信支付功能
Feb 17 PHP
基于ThinkPHP实现的日历功能实例详解
Apr 15 PHP
Laravel中批量赋值Mass-Assignment的真正含义详解
Sep 29 PHP
php引用传递
Apr 01 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二维数组用键名分组相加实例函数
2013/11/06 PHP
PHP开发微信支付的代码分享
2014/05/25 PHP
Drupal简体中文语言包安装教程
2014/09/27 PHP
ThinkPHP中公共函数路径和配置项路径的映射分析
2014/11/22 PHP
在Windows XP下安装Apache+MySQL+PHP环境
2015/02/22 PHP
PHP SplObjectStorage使用实例
2015/05/12 PHP
Yii框架实现邮箱激活的方法【数字签名】
2016/10/18 PHP
PHP实现求连续子数组最大和问题2种解决方法
2017/12/26 PHP
对 lightbox JS 图片控件进行了一下改造, 使其他支持复杂的图片说明
2010/03/20 Javascript
Whatever:hover 无需javascript让IE支持丰富伪类
2010/06/29 Javascript
juqery 学习之三 选择器 子元素与表单
2010/11/25 Javascript
java、javascript实现附件下载示例
2014/08/14 Javascript
让angularjs支持浏览器自动填表
2014/11/10 Javascript
director.js实现前端路由使用实例
2015/02/03 Javascript
AngularJS入门教程之 XMLHttpRequest实例讲解
2016/07/27 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
2017/01/05 Javascript
angularjs ocLazyLoad分步加载js文件实例
2017/01/17 Javascript
Angularjs中数据绑定的实例详解
2017/08/25 Javascript
vue组件与复用详解
2018/04/08 Javascript
详解extract-text-webpack-plugin 的使用及安装
2018/06/12 Javascript
简述Vue中容易被忽视的知识点
2019/12/09 Javascript
[10:24]郎朗助力完美“圣”典,天籁交织奏响序曲
2016/12/18 DOTA
初步解析Python中的yield函数的用法
2015/04/03 Python
轻松实现python搭建微信公众平台
2016/02/16 Python
详解Python 2.6 升级至 Python 2.7 的实践心得
2017/04/27 Python
Python程序退出方式小结
2017/12/09 Python
对Python中画图时候的线类型详解
2019/07/07 Python
办公室文书岗位职责
2013/12/16 职场文书
自我鉴定注意事项
2014/01/19 职场文书
营销总监岗位职责范本
2014/02/26 职场文书
庆祝教师节演讲稿
2014/09/03 职场文书
离退休人员聘用协议书
2014/11/24 职场文书
化妆品促销活动总结
2015/05/07 职场文书
家长对孩子的寒假评语
2015/10/09 职场文书
简历自我评价范文
2019/04/24 职场文书
详解vue身份认证管理和租户管理
2021/05/25 Vue.js