WordPress修改feed更新频率防止被及时采集

重要:本文最后更新于2019-05-22 08:27:53,某些文章具有时效性,若有错误或已失效,请在下方留言或联系九月网

很多人喜欢使用feed来采集文章,我想应该是feed文件具有规则,一套采集规则可以很方便的采集很多网站的原因。有时候我们新写的文章被大站采集,或者说被别人恶意采集发布到大站上,我们自己写的原创文章还没收录,采集的文章倒是先被收录了。别不信,大站权重高,收录比新站快得多。为了防止出现这种情况,我们就需要调整一下feed的更新频率,比如半天之后更新一次,这个时间最后调整为你自己网站被收录的时间周期。

比如今天在群里说到这个问题的大佬,他就是延迟了2天更新feed。有人可能会问,延迟更新有什么坏处吗?会不会影响收录?我只知道延迟更新feed只会让订阅的人接收消息不及时,并没有其它什么大问题,而且现在也没几个人会用feed订阅了。

关于如何使用WordPress的RSS feed采集文章可以参考这篇文章:WordPress仪表盘调用站外文章列表实现代码

在WordPress中,官方提供了过滤器用来修改rss feed的更新频率。

怎么看你的feed更新频率?

打开你的域名/feed,你可以看到一些关于你网站内容的数据,找到updatePeriod关键字,如下:

WordPress修改feed更新频率防止被及时采集

WordPress修改feed更新频率防止被及时采集

hourly
1

sy:updatePeriod标签代表的是feed更新周期的单位,可供使用的周期单位有:小时hourly,天 daily,周 weekly,月 monthly ,年 yearly

sy:updateFrequency标签的值就是feed更新周期的值了,比如上图的意思就是1小时,这个很好明白,这两个标签连在一次读就行。

WordPress修改feed更新频率

在你的主题functions.php文件(也可以是插件,只要能被WordPress加载)中加入如下代码:

add_filter( 'rss_update_period', function() {return 'hourly';} ); 
add_filter( 'rss_update_frequency', function() {return '12';} );

仔细对比过滤器的名称,其实就是对应的feed更新频率标签的名称,这里采用的匿名方法的写法,与下面这种写法效果一样。

add_filter( 'rss_update_period', 'feed_period' ); 
add_filter( 'rss_update_frequency', 'feed_frequency' );
//更新周期方法
function feed_period() {
     return 'hourly';
}
//更新周期长度
function feed_frequency() {
     return '12';
}

给TA打赏
共{{data.count}}人
人已打赏
WordPress

WordPress钩子为admin-ajax.php注册接口替代接口文件

2019-5-21 0:00:00

WordPress

WP REST API操作评论相关接口及实例

2019-5-23 0:00:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索