WordPress Feed 详细介绍、使用和屏蔽

现在说到 Feed 或者 RSS,很多人都感觉非常陌生,在我年轻的那个年代,这个可是最酷的东西,最 Web 2.0 的东西。

当时和他一起酷的还有 Google Reader,一款 RSS 阅读器,通过订阅自己喜欢的博客的 RSS,然后在 Google Reader 中一起阅读,甚至可以分享好文章到它的发现页,通过好友的分享可以订阅到很多很好的博客。

后面 Google 在 2013 年竟然关闭了该项服务,让我们当年这些 RSS 深度用户都非常失望和悲伤,但是对于大部分用户来,连什么是 RSS 都不知道。

虽然大家都不再使用 RSS 阅读器了,甚至订阅行为的已经偏离原来的 RSS 订阅没有什么关系了,现在的订阅大部分都是公众号订阅或者其他媒体平台的订阅了。

但是 WordPress 对 Feed 的支持还是非常完整的,今天就简单介绍一下 WordPress 的 Feed 功能支持,和我们有哪些使用的技巧,最后还可以屏蔽它。

什么是 Feed

Feed 好像没有一个合适的中文名称,我们介绍下它的用途吧,Feed 是用来接收信息源(通常是网站)更新的接口(通常是一个网址),由网站提供给用户。

所以简单说,Feed 是消息源,也就是这个页面提供一些信息,比如:https://blog.wpjam.com/feed,这个就是我博客的消息源页面。

RSS 是 Feed 的一种技术实现方式,RSS 是站点用来和其他站点之间共享内容的一种简易方式(也叫聚合内容),一个 RSS 包含很多条目,一个条目可能包含介绍(可以是全文也可以摘要),还有链接和其他信息。

用户可以在自己的客户端,借助于支持 RSS 的新闻聚合工具软件,在不打开网站内容页面的情况下阅读这些支持 RSS 输出的网站的内容。

RSS 和 Atom

由于历史的原因 RSS 存在好几个版本:

RSS:Rich Site Summary(RSS 0.91)丰富站点摘要,UserLand 公司推出。WordPress 的 RSS 地址为:https://blog.wpjam.com/feed/rss/。

RDF:(Resource Description Framework)Site Summary(RSS 1.0)资源描述框架站点摘要,一个联合小组基于RSS 0.9 改进推出。WordPress 的 RDF 地址为:https://blog.wpjam.com/feed/rdf/。

RSS2:Really Simple Syndication(RSS 2.0)真正简单的整合,由于 RDF 没有没有得到 UserLand 公司 的授权,所以 UserLand 公司继续开发,名字也改成“Real”,意思别人都是假的😄。WordPress 的 RSS2 地址为:https://blog.wpjam.com/feed/rss2/。

Atom:这个才是通用的规范,是IETF的"建议标准",它是一组相对的协议,Atom 供稿格式(Atom Syndication Format)是用于网站消息来源,基于XML的文档格式;而 Atom 发布协议(Atom Publishing Protocol,简称 AtomPub 或 APP)是用于新增及修改资源,基于 HTTP 的协议。

Atom 供稿格式是用来替代 RSS 协议的,WordPress 的 Atom 的地址为:ttps://blog.wpjam.com/feed/atom/。WordPress 原本支持 Atom 发布协议的,但是在 3.5 版本移除了,并且通过一个 AtomPub 协议插件来实现。

WordPress Feed 的使用技巧

我们在使用 WordPress 的过程,总结了一些技巧:

在 Feed 中插入相关文章

通过 WPJAM Basic「相关文章」扩展,勾选「自动附加相关文章到文章末尾」即可实现在 Feed 中展现相关文章:

把自定义文章类型添加到 Feed

通过 WPJAM Basic「文章数量」扩展,可以设置在不同的页面显示哪些文章类型,其中就包括 Feed 页:

禁用 WordPress Feed

现在通过 RSS 阅读的同学越来越少了,并且 RSS 还成为了一些垃圾站快速全文采集的方式,所以如果你想禁用 RSS Feed,可以在当前主题的 functions.php 文件中添加如下代码:

代码语言:javascript
复制
function wpjam_disable_feed() {
	wp_die(__('<h1>本博客不再提供 Feed,请访问网站<a href="'.get_bloginfo('url').'">首页</a>!</h1>'));
}
add_action('do_feed',      'wpjam_disable_feed', 1);
add_action('do_feed_rdf',  'wpjam_disable_feed', 1);
add_action('do_feed_rss',  'wpjam_disable_feed', 1);
add_action('do_feed_rss2', 'wpjam_disable_feed', 1);
add_action('do_feed_atom', 'wpjam_disable_feed', 1);

该功能已经整合到 WPJAM Basic 插件中,并已免费提供下载,勾选一下即可禁用 Feed。