利用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 项目的方法
Jan 02 PHP
在PHP中使用curl_init函数的说明
Nov 02 PHP
取得单条网站评论以数组形式进行输出
Jul 28 PHP
php常用hash加密函数
Nov 22 PHP
编写PHP脚本来实现WordPress中评论分页的功能
Dec 10 PHP
Yii中表单用法实例详解
Jan 05 PHP
PHP中的多种加密技术及代码示例解析
Oct 20 PHP
php实现自定义中奖项数和概率的抽奖函数示例
May 26 PHP
PHP实现将base64编码字符串转换成图片示例
Jun 22 PHP
PHP实现的只保留字符串首尾字符功能示例【隐藏部分字符串】
Mar 11 PHP
php实现微信公众号创建自定义菜单功能的实例代码
Jun 11 PHP
PHP设计模式概论【概念、分类、原则等】
May 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防止sql注入代码实例
2013/12/18 PHP
Symfony查询方法实例小结
2017/06/28 PHP
详谈PHP中public,private,protected,abstract等关键字的用法
2017/12/31 PHP
Whatever:hover 无需javascript让IE支持丰富伪类
2010/06/29 Javascript
js面向对象设计用{}好还是function(){}好(构造函数)
2011/10/23 Javascript
JQuery魔力之$(&quot;tagName&quot;)与selector
2012/03/05 Javascript
jQuery图片的展开和收缩实现代码
2013/04/16 Javascript
Node.js中require的工作原理浅析
2014/06/24 Javascript
JavaScript使用循环和分割来替换和删除元素实例
2014/10/13 Javascript
理解javascript中的原型和原型链
2015/07/30 Javascript
EasyUi中的Combogrid 实现分页和动态搜索远程数据
2016/04/01 Javascript
JS Ajax请求如何防止重复提交
2016/06/13 Javascript
最佳的JavaScript错误处理实践
2016/07/16 Javascript
Vue.js 递归组件实现树形菜单(实例分享)
2016/12/21 Javascript
详解nodejs微信公众号开发——1.接入微信公众号
2017/04/10 NodeJs
nodejs 终端打印进度条实例代码
2017/04/22 NodeJs
详解webpack+vue-cli项目打包技巧
2017/06/17 Javascript
BootStrap的双日历时间控件使用
2017/07/25 Javascript
如何提升vue.js中大型数据的性能
2019/06/21 Javascript
用云开发Cloudbase实现小程序多图片内容安全监测的代码详解
2020/06/07 Javascript
swiper4实现移动端导航栏tab滑动切换
2020/10/16 Javascript
[00:32]2018DOTA2亚洲邀请赛OpTic出场
2018/04/03 DOTA
[10:18]2018DOTA2国际邀请赛寻真——找回自信的TNCPredator
2018/08/13 DOTA
python爬虫 线程池创建并获取文件代码实例
2019/09/28 Python
python 按钮点击关闭窗口的实现
2020/03/04 Python
Html5 video标签视频的最佳实践
2020/02/26 HTML / CSS
Ralph Lauren法国官网:美国高品味时装品牌
2017/12/08 全球购物
称象教学反思
2014/02/03 职场文书
党建示范点实施方案
2014/03/12 职场文书
春节联欢会主持词
2014/03/24 职场文书
《跟踪台风的卫星》教学反思
2014/04/10 职场文书
2014年中秋寄语
2014/08/11 职场文书
学习朴航瑛老师爱岗敬业先进事迹思想汇报
2014/09/17 职场文书
大足石刻导游词
2015/02/02 职场文书
《中国古代诗歌散文欣赏》高中语文教材
2019/08/20 职场文书
MySQL优化及索引解析
2022/03/17 MySQL