このget_posts配列を使用して、コメントで人気のある上位15件の投稿を取得しています。問題は、投稿がブログに追加された日からそれらのすべてのそれらの高度にコメントされた投稿を示しているということです。そのため、リストは変更されることがありますが、ほとんどの場合は変わりません。
過去7日間の投稿を制限/表示するにはどうすればよいですか。これは先週の最もコメントされた投稿を表示するでしょう。
ありがとう
これが私のコードです:
global $post;
$args = array(
'orderby' => 'comment_count',
'order' => 'DESC' ,
'numberposts' => 15);
$popular_posts = get_posts( $args );
foreach( $popular_posts as $post ) :
if (has_post_thumbnail()) { ?>
<li>
<div class="widgetimg">
<a href="<?php the_permalink(); ?>"><?php the_post_thumbnail('widgetimg-thumb'); ?></a>
</div>
</li>
<?php } endforeach; ?>
これは過去7日間の投稿を表示する機能です、またはあなたの要件に応じて変更することができます。
function filter_where($where = '') {
//posts in the last 7 days
$where .= " AND post_date > '" . date('Y-m-d', strtotime('-7 days')) . "'";
return $where;
}
add_filter('posts_where', 'filter_where');