WordPress 的 Feed 功能可以用来生成 RSS(Really Simple Syndication)和 ATOM(Atom Syndication Format)格式的内容,使得读者可以通过订阅来获取网站上的最新文章和页面。然而在当前时代,几乎没人会用订阅功能了,但它却为网站内容被采集提供了便利条件,因此不如禁掉。
1. WordPress Feed
WordPress 默认情况下会自动生成 Feed,Feed 的链接一般在头部的 meta 标签中提供,例如:
<link rel="alternate" type="application/rss+xml" title="My Site RSS Feed" href="http://你的域名/feed/" />
如果你不希望在网站上提供 Feed 功能,那可以通过如下方法从页面头部移除并禁用此功能。
2. 从头部移除 Feed
remove_action('wp_head', 'feed_links_extra', 3); remove_action('wp_head', 'feed_links', 2);
在主题的 functions.php 文件中添加以上代码,这将从网站头部完全移除 feed 相关的代码,包括 feed 链接和 feed 元标记。注意,如果您想要保留其中一种 feed 类型(例如RSS feed),请不要删除相应的 remove_action 行。
3. 禁用 RSS Feed 和 ATOM Feed
3.1 全部禁用
可以通过添加以下代码到您的网站主题的 functions.php 文件来完全禁用RSS Feed和ATOM Feed功能:
function disable_feed() { wp_die( __('No feed available, please visit the homepage!') ); } add_action('do_feed', 'disable_feed', 1); add_action('do_feed_rdf', 'disable_feed', 1); add_action('do_feed_rss', 'disable_feed', 1); add_action('do_feed_rss2', 'disable_feed', 1); add_action('do_feed_atom', 'disable_feed', 1);
以上代码将所有的 Feed 请求重定向到一个带有错误消息的页面,提示用户访问主页获取信息。这种方法可以彻底禁用 Feed 功能,而且不需要任何额外的插件或配置。
3.2 部分禁用
如果你只想禁用某一种Feed(RSS或ATOM),可以将上述代码中相应的部分保留,将其他部分删除。例如,如果你只想禁用 RSS Feed,则可以使用以下代码,这将禁用所有的 RSS Feed 请求,并重定向到一个带有错误消息的页面:
function disable_rss() { wp_die( __('No feed available, please visit the homepage!') ); } add_action('do_feed', 'disable_rss', 1); add_action('do_feed_rdf', 'disable_rss', 1); add_action('do_feed_rss', 'disable_rss', 1); add_action('do_feed_rss2', 'disable_rss', 1);
如果你只想禁用 ATOM Feed,则可以使用以下代码,这将禁用所有的 ATOM Feed 请求,并重定向到一个带有错误消息的页面:
function disable_atom() { wp_die( __('No feed available, please visit the homepage!') ); } add_action('do_feed_atom', 'disable_atom', 1);
总的来说,禁用 WordPress 的 Feed 功能非常简单,只需要添加一些代码到主题的 functions.php 文件中即可。
暂无评论
要发表评论,您必须先 登录