禁用评论提要,但不禁用其他

时间:2013-12-11 作者:Jérôme

我想定制我的WordPress博客,这样就不可能再访问评论提要了。

其他提要应该仍然可用,并且应该仍然可以为任何文章添加评论。

我试图找到一个插件来实现这一点,但我发现的是一个全有或全无的特性,无法精细调整哪些提要是允许的,哪些不是。

4 个回复
最合适的回答,由SO网友:Shazzad 整理而成
function remove_comment_feeds( $for_comments ){
    if( $for_comments ){
        remove_action( \'do_feed_rss2\', \'do_feed_rss2\', 10, 1 );
        remove_action( \'do_feed_atom\', \'do_feed_atom\', 10, 1 );
    }
}
add_action( \'do_feed_rss2\', \'remove_comment_feeds\', 9, 1 );
add_action( \'do_feed_atom\', \'remove_comment_feeds\', 9, 1 );
SO网友:pixeline

正如@glueckpress所提到的,从4.4开始,您可以使用feed_links_show_comments_feed 滤器

示例(在theme functions.php文件中):

add_action( \'after_setup_theme\', \'head_cleanup\' );

function head_cleanup(){

    // Add default posts and comments RSS feed links to head.
    add_theme_support( \'automatic-feed-links\' );

    // disable comments feed
    add_filter( \'feed_links_show_comments_feed\', \'__return_false\' ); 

}

SO网友:glueckpress

@Shazzad的方法似乎不起作用current_theme_supports( \'automatic-feed-links\' ), 因为高达4.3的WordPress似乎be pretty ego about feed links. 你必须remove_action( \'wp_head\', \'feed_links\', 2 ) 硬,并添加您自己的功能,只打印文章提要的链接。

然而,从4.4开始,使用全新的过滤器似乎会变得更容易:feed_links_show_posts_feed.

SO网友:Robbiegod

我想删除评论提要并发布评论提要。从Wordpress 5.4.2开始,这对我很有效。

将此添加到您的;“在设置主题后”;行动

add_theme_support(\'automatic-feed-links\');
在该行之后添加此项:

add_filter( \'feed_links_show_comments_feed\', \'__return_false\' );
在您的“之后”;在\\u setup\\u主题操作之后,添加此函数和过滤器(我从https://jeffvautin.com/2016/03/removing-comments-rss-feeds-from-wordpress/ 博客。)它将删除帖子评论提要。

/**
 * Remove the posts comments rss feed 
 */
function disablePostCommentsFeedLink($for_comments) {
  return;
}
add_filter(\'post_comments_feed_link\',\'disablePostCommentsFeedLink\');
我还添加了这个来删除那些不必要的提要

/**
 * remove non-essential rss feeds
 * 
 * This removes feeds like tags, authors, search, post type
 */
remove_action( \'wp_head\', \'feed_links_extra\', 3 );
我相信这会给我一个主要的线索。我不确定这是否是最好的方式,但似乎做到了。

结束

相关推荐

FETCH_FEED仅显示第一个项目

我正在尝试使用以下方法将提要从WordPress站点导入到另一个站点fetch_feed().一切都很好,除了事实上我只能得到第一个项目的饲料。这是我使用的代码add_shortcode(\'custom_feed\',\'feed2\'); function feed2(){ $rss = fetch_feed( \'http://blog.sugarpulp.it/feed/\' ); $rss_items = $rss->get_items( 0, 3