WordPress设置RSS feed更新频率

日期: 标签:WordPress教程 7 条留言
如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务:  点此联系我
文章目录

昨天在写 WordPress实现feed静态化 这篇文章时,顺便看了RSS2 Feed的模板文件,发现WordPress是提供了filter来设置RSS feed的更新频率的。

什么是更新频率?

在浏览器中打开WordPress的feed订阅地址,一般是http://域名/feed,如https://www.ludou.org/feed,如不是IE浏览器(可查看源代码),搜索updatePeriod,你会看到这么两行代码:

<sy:updatePeriod>hourly</sy:updatePeriod>
<sy:updateFrequency>1</sy:updateFrequency>

这其中的hourly是更新频率的单位(每小时),1是更新频率的时间,这么说可能有点难以理解,组合起来讲,就是告诉采集这个feed的人,我这个feed每   1    小时   更新一次,建议你每1个小时来采集一次,不要太快,也不要太慢。

当然这两行代码的声明也仅仅是声明,很多feed采集器未必遵守,就像很多搜索引擎未必遵守robots.txt规则一样,但至少聊胜于无,规则是给遵守规则的人制定的嘛。

WordPress设置RSS feed更新频率

WordPress默认设置的更新频率是每1个小时更新一次,这个频率对于绝大多数博客网站来说都是偏高的,每个小时发一篇文章那是什么概念?我看只有采集站能办得到了吧。你说什么,伪原创?伪原创也是需要花时间来伪的好吧,就算是伪原创,一天24小时都在伪?不太可能吧!

说了这么多,那在WordPress中应该怎样设置RSS feed的更新频率呢?WordPress后台没有找到相关的设置项,那我们只能自己写代码了。其实也很简单,在当前主题的functions.php中加入以下代码即可:

add_filter( 'rss_update_period', function() {return 'daily';} );
add_filter( 'rss_update_frequency', function() {return '3';} );

解释一下,第1行代码中的daily是单位(每天),单位值可以设置为:'hourly', 'daily', 'weekly', 'monthly', 'yearly',学过初中英语的应该都懂,分别代表:每小时,每天,每星期,每月,每年

第2行代码中的3,设置的是更新频率的时间,上面2行代码组合起来就是声明这个feed每3天更新一次。下面加几个例子,便于大家理解。

// 每36小时
add_filter( 'rss_update_period', function() {return 'hourly';} );
add_filter( 'rss_update_frequency', function() {return '36';} );

// 每2个星期
add_filter( 'rss_update_period', function() {return 'weekly';} );
add_filter( 'rss_update_frequency', function() {return '2';} );

这个频率具体设置多少,应该根据博客的实际更新频率来,设置得太高,文章更新又不那么快,导致feed被频繁访问,肯定会消耗更多的服务器资源;设置低了,会让feed订阅用户不那么及时的看到网站的新文章。

-- 完 --

本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:露兜博客 https://www.ludou.org/wordpress-set-rss-update-period.html
露兜
ourwindow@163.com  QQ 825533758   微信号 ludou364939

业余编程爱好者,主业是贝壳工艺品商人,感兴趣可以到我的淘宝店看看:海叔贝爷

7 条留言

点此留言
  1. WordPress头条

    又来一篇?跟feed杠上了?

  2. 明月登楼

    哈哈,其实FEED还是很有用处的,就看你怎么使用了!

  3. Zixie

    博客终于恢复了。

    • 露兜

      @Zixie 谷歌浏览器报告你的网站存在风险

      • Zixie

        @露兜 一直用的chrome 报错有好久了。自己能打开得了 !( 好懒,囧~)

  4. Zl

    Feed用原生的就可以了,懒得折腾了.

发表留言