Hi!请登陆

如何彻底移除并关闭WordPress的RSS feed?

2021-1-4 85 1/4

代码版

将以下 php 代码放入当前主题的 functions.php 中,然后登录进入 WordPress 后台,随便打开一个页面,然后在后台 >> 外观 >> 编辑中找到 functions.php 文件将:flush_rewrite_rules(); 这行代码删除即可。

// 删除 wp_head 输入到模板中的 feed 地址链接
add_action( 'wp_head', 'wpse33072_wp_head', 1 );
function wpse33072_wp_head() {
remove_action( 'wp_head', 'feed_links', 2 );
remove_action( 'wp_head', 'feed_links_extra', 3 );
}

foreach( array( 'rdf', 'rss', 'rss2', 'atom' ) as $feed ) {
add_action( 'do_feed_' . $feed, 'wpse33072_remove_feeds', 1 );
}
unset( $feed );

// 当执行 do_feed action 时重定向到首页
function wpse33072_remove_feeds() {
wp_redirect( home_url(), 302 );
exit();
}

// 删除 feed 的重定向规则
add_action( 'init', 'wpse33072_kill_feed_endpoint', 99 );

function wpse33072_kill_feed_endpoint() {
global $wp_rewrite;
$wp_rewrite->feeds = array();

// 运行一次后,记得删除下面的代码
flush_rewrite_rules();
}

插件版

 下载 remove-feeds 插件

下载后解压,将 remove-feeds 目录通过 ftp 上传到网站的 wp-content/plugins 目录,然后在 WordPress 后台 >> 插件中,启用这个插件即可: Remove All feeds [for WPSE33072]

内容整理自:露兜博客 - https://www.ludou.org/how-to-remove-feeds-from-wordpress-totally.html

相关推荐