利用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 相关文章推荐
做个自己站内搜索引擎
Oct 09 PHP
实用PHP会员权限控制实现原理分析
May 29 PHP
php实现高效获取图片尺寸的方法
Dec 12 PHP
PHP中array_keys和array_unique函数源码的分析
Feb 26 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
May 22 PHP
PHP文件及文件夹操作之创建、删除、移动、复制
Jul 13 PHP
php 调用ffmpeg获取视频信息的简单实现
Apr 03 PHP
php基于session锁防止阻塞请求的方法分析
Aug 07 PHP
PHP Class SoapClient not found解决方法
Jan 20 PHP
ThinkPHP框架实现的邮箱激活功能示例
Jun 15 PHP
laravel5使用freetds连接sql server的方法
Dec 07 PHP
PHP中$GLOBALS与global的区别详解
Mar 21 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
Zerg基本策略
2020/03/14 星际争霸
PHP 文件类型判断代码
2009/03/13 PHP
用PHP即时捕捉PHP中的错误并发送email通知的实现代码
2013/01/19 PHP
ThinkPHP中的create方法与自动令牌验证实例教程
2014/08/22 PHP
如何用javascript控制上传文件的大小
2006/10/26 Javascript
UI Events 用户界面事件
2012/06/27 Javascript
jquery miniui 教程 表格控件 合并单元格应用
2012/11/25 Javascript
window.open关于浏览器拦截问题分析及解决方法
2013/02/05 Javascript
JS函数重载的解决方案
2014/05/13 Javascript
jQuery页面加载初始化常用的三种方法
2014/06/04 Javascript
javascript表格隔行变色加鼠标移入移出及点击效果的方法
2015/04/10 Javascript
JS中的THIS和WINDOW.EVENT.SRCELEMENT详解
2015/05/25 Javascript
js实现继承的5种方式
2015/12/01 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
JS结合bootstrap实现基本的增删改查功能
2016/07/22 Javascript
vue.js中过滤器的使用教程
2017/06/08 Javascript
详解Angular-cli生成组件修改css成less或sass的实例
2017/07/27 Javascript
[46:38]完美世界DOTA2联赛PWL S2 Magma vs PXG 第三场 11.28
2020/12/02 DOTA
Python文档生成工具pydoc使用介绍
2015/06/02 Python
pycharm下查看python的变量类型和变量内容的方法
2018/06/26 Python
详解python中init方法和随机数方法
2019/03/13 Python
python调用动态链接库的基本过程详解
2019/06/19 Python
详解Python流程控制语句
2020/10/28 Python
CSS3 制作绽放的莲花采用效果叠加实现
2013/01/31 HTML / CSS
值得收藏的HTML5资源(学习html5的朋友可以收藏下)
2010/07/20 HTML / CSS
Canvas多边形绘制的实现方法
2019/08/05 HTML / CSS
TripAdvisor印尼站:全球领先的旅游网站
2018/03/15 全球购物
屈臣氏马来西亚官网:Watsons马来西亚
2019/06/15 全球购物
华为c/c++笔试题
2016/01/25 面试题
年度考核自我评价
2014/01/25 职场文书
党课心得体会范文
2014/09/09 职场文书
简单的离婚协议书范本
2014/11/16 职场文书
故宫导游词
2015/01/31 职场文书
2015年工会工作总结
2015/03/30 职场文书
2016大学生暑期社会实践心得体会
2016/01/14 职场文书
Oracle 死锁的检测查询及处理
2021/09/25 Oracle