如何从提要中排除特定格式的帖子

时间:2011-05-27 作者:navjotjsingh

我想从提要中的旁白帖子格式中排除帖子。我已经检查过了here 关于如何从循环中排除特定帖子格式中的帖子,但如何从提要中的帖子格式中排除帖子?无法修改它,因为我对代码不是很熟悉。

1 个回复
最合适的回答,由SO网友:Jan Fabry 整理而成

如果你想修改提要,你应该钩住WordPress对每个页面请求所做的主查询。这里最好的钩子是pre_get_posts. 此代码示例将连接到pre_get_posts, 检查是否为提要,并添加post格式分类查询:

add_action( \'pre_get_posts\', \'wpse18412_pre_get_posts\' );
function wpse18412_pre_get_posts( &$wp_query )
{
    if ( $wp_query->is_feed() ) {
        $post_format_tax_query = array(
            \'taxonomy\' => \'post_format\',
            \'field\' => \'slug\',
            \'terms\' => \'post-format-image\', // Change this to the format you want to exclude
            \'operator\' => \'NOT IN\'
        );
        $tax_query = $wp_query->get( \'tax_query\' );
        if ( is_array( $tax_query ) ) {
            $tax_query = $tax_query + $post_format_tax_query;
        } else {
            $tax_query = array( $post_format_tax_query );
        }
        $wp_query->set( \'tax_query\', $tax_query );
    }
}

结束

相关推荐

How to customize feed?

我正在尝试自定义WordPress提要。我知道如果我修改wp-includes/feed-rss2.php, 饲料已修改。但我不想修改此文件,因为它可能在升级过程中被覆盖。我试图将文件复制到wp-content/themes/mytheme/feed-rss2.php, 但该文件似乎被忽略了。我发现this article 关于自定义WordPress提要,但这篇文章很旧,引用的文件现在只是虚拟文件。Background: 这是我真正想做的,以防有更好的方法。我们公司有一个WordPress博客。这些帖子