Only Include Recent Posts in Feeds
Limits your feeds to posts published in the last few days, which keeps them short for busy news sites and stops readers re-importing old items.
Opens WPIDE on
Code
// Only posts from the last this many days appear in feeds.
$wpide_feed_days = 30;
add_action( 'pre_get_posts', function ( $query ) use ( $wpide_feed_days ) {
if ( is_admin() || ! $query->is_main_query() || ! $query->is_feed() || $query->is_comment_feed() ) {
return;
}
$query->set( 'date_query', array(
array(
'after' => absint( $wpide_feed_days ) . ' days ago',
'inclusive' => true,
),
) );
} );
Notes
Change the number of days at the top. A feed can be empty if nothing was published in that time.
How to add this snippet
- Install WPIDE on your WordPress site (it is free) and open Code Snippets.
- Use snippet above adds it from the library in one click. Or copy the code into a new snippet with the same code type.
- It is added inactive: review the code and settings, then switch it on.