WordPress禁用RSS Feed

WordPress提供了很多RSS Feed的功能,除了全站文章订阅,还有评论订阅,然后目前使用RSS订阅功能的人越来越少,加快WordPress的运行效率,可以直接禁用RSS Feed。

WordPress主题 的 functions.php 文件加入:

// 删除 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();
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注