专注云服务商活动
网站运营运维笔记

禁止WordPress被订阅RSS 禁用FEED RSS功能

考虑到信息的隐私问题,我们不希望自己的网站被他人RSS工具订阅,这里我们可以禁止掉。

function disable_all_feeds() {
   wp_die( '本站不提供feed,请直接前往www.laozuo.org' );
}
add_action('do_feed', 'disable_all_feeds', 1);
add_action('do_feed_rdf', 'disable_all_feeds', 1);
add_action('do_feed_rss', 'disable_all_feeds', 1);
add_action('do_feed_rss2', 'disable_all_feeds', 1);
add_action('do_feed_atom', 'disable_all_feeds', 1);

我们也可以通过这个方法彻底禁止。

// 禁止RSS laozuo.org
add_action( 'wp_head', 'laozuoorg_wp_head', 1 );
function laozuoorg_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, 'banzhuti_remove_feeds', 1 );
}
unset( $feed );

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

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

function banzhuti_kill_feed_endpoint() {
    global $wp_rewrite;
    $wp_rewrite->feeds = array();
    
    // 运行一次后,记得删除下面的代码
    flush_rewrite_rules();
}

将以上php代码放入当前主题的functions.php中。当然我们也可以用一些插件实现,比如LESEO插件。

投上你的一票
域名主机商优惠信息推送QQ群: 627775477 获取商家优惠推送,禁言。
赞(0)
未经允许不得转载:老左笔记 » 禁止WordPress被订阅RSS 禁用FEED RSS功能