以前的24小时帖子的RSS提要?

时间:2016-05-15 作者:Phil

我怎样才能创建一个仅仅是之前24小时帖子的提要?或者这有可能吗?是否有提供该功能的插件?

1 个回复
SO网友:TheDeadMedic

好了,孩子们,我们今天要利用一些很棒的WordPress功能。首先,让我们将自定义提要注册到add_feed:

/**
 * Register "my_feed".
 */
function wpse_226681_register_feed() {
    // do_feed_rss() loads the default RSS template in WordPress
    add_feed( \'my_feed\', \'do_feed_rss\' );
}

add_action( \'init\', \'wpse_226681_register_feed\' );

/**
 * Handle content-type for "my_feed".
 */
function wpse_226282_feed_type( $type, $name ) {
    if ( $name === \'my_feed\' )
        $type = feed_content_type( \'rss2\' );

    return $type;
}

add_filter( \'feed_content_type\', \'wpse_226282_feed_type\', 10, 2 );
。。。哪里my_feed 是您的源的名称,即。example.com/feed/my_feed. 确保代码到位后刷新重写规则-只需在管理中重新保存永久链接设置。

接下来,我们需要覆盖自定义提要的默认查询-我们将使用date query 要在过去24小时内获取所有帖子,请执行以下操作:

function wpse_226681_feed_query( $wp_query ) {
    if ( $wp_query->is_main_query() && $wp_query->is_feed( \'my_feed\' ) ) {

        $wp_query->set( \'ignore_sticky_posts\', true );
        $wp_query->set( \'posts_per_page\', -1 );
        $wp_query->set( \'date_query\', [
            \'after\' => date( \'Y-m-d H:i\', strtotime( \'-24 hours\' ) ),
        ]);

    }
}

add_action( \'pre_get_posts\', \'wpse_226681_feed_query\' );

相关推荐

显示RSS提要中自定义帖子中的自定义域

我已经为此挣扎了几天,但仍然不知道该怎么做。我想做的是在RSS提要中添加一个自定义表字段,所以我使用代码片段来解决这个问题。下面是我的nw,但我相信我已经尝试了所有可能的组合,我可以在WP site.function featuredtoRSS($content) { if ( has_post_thumbnail( $post->ID ) && get_post_type() == \'product\'){ global $wpdb;