我还真是一个善变的人,前段时间更换主题时将原始feed改为feedsky的(以前用的是FeedBurner的)。可是发现feedsky的延迟得实在是太厉害了,而FeedBurner深受GFW的影响;再加上我现在也算是有域名之人了,即使更换空间,feed地址也是可以不变的。
故在此将feed改为原始feed://liunian.info/feed。当然,feedsky的可以用,FeedBurner的也可以用,只是不建议而已。
另:我订阅别人博客都是直接将网址输入到greader中的。
我还真是一个善变的人,前段时间更换主题时将原始feed改为feedsky的(以前用的是FeedBurner的)。可是发现feedsky的延迟得实在是太厉害了,而FeedBurner深受GFW的影响;再加上我现在也算是有域名之人了,即使更换空间,feed地址也是可以不变的。
故在此将feed改为原始feed://liunian.info/feed。当然,feedsky的可以用,FeedBurner的也可以用,只是不建议而已。
另:我订阅别人博客都是直接将网址输入到greader中的。
关于RSS的优化,可以参看这里10个优化WordPress RSS Feed的技巧(1)。
我就是参照了这里,使用了其中的两个提示,虽然就目前来看,只有一个起了作用。
主要是因为发布后可能需要更改,但如果不延迟rss输出,别人订阅的可能就是修改前的版本了。
解决方法:在主题的function.php中添加以下代码(如没有该文件,可以新建)
function publish_later_on_feed($where) {
global $wpdb;
if ( is_feed() ) {
// timestamp in WP-format
$now = gmdate('Y-m-d H:i:s');
// value for wait; + device
$wait = '5'; // integer
// http://dev.mysql.com/doc/refman/5.0/en/date-and-time-functions.html#function_timestampdiff
$device = 'MINUTE'; //MINUTE, HOUR, DAY, WEEK, MONTH, YEAR
// add SQL-sytax to default $where
$where .= " AND TIMESTAMPDIFF($device, $wpdb->posts.post_date_gmt, '$now') > $wait ";
}
return $where;
}
add_filter('posts_where', 'publish_later_on_feed');
代码功能: 上面的代码会让你的文章迟5分钟输出Feed。如果你想改变迟延的时间,修改代码中的$wait = ‘5′,5代表5分钟。