<ul class="custom-list">
<?php
$posts= get_posts( 'post_type=post&posts_per_page=9&order=desc' );
foreach ( $posts as $key=> $post ) {
setup_postdata($post);
$attribute_before= $key < 3 ? 'new' : '';
?>
<li>
<article id="post-<?php the_ID(); ?>" <?php post_class( $attribute_before ); ?>>
<?php the_title('<h3 class="entry-title">','</h3>');?>
</article>
</li>
<?php
}
wp_reset_postdata();
?>
</ul>
https://ja.wordpress.org/support/topic/%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E6%8A%95%E7%A8%BF%E3%82%BF%E3%82%A4%E3%83%97%E3%81%AE%E6%9C%80%E6%96%B03%E4%BB%B6%E3%81%ABnew%E3%82%92%E8%A1%A8%E7%A4%BA%E3%81%95%E3%81%9B%E3%81%9F%E3%81%84/
Raindrops テーマのnew 表示
Raindropsテーマでも、最新投稿に「new」表示を行うようにデフォルトで設定されています。
post_class()にクラスを追加するのは、同じですがRaindropsの場合は、以下のように経過時間によって表示非表示をコントロールしています。
$raindrops_now = current_time( 'timestamp' );
$raindrops_publish_time = get_the_time( 'U' );
$raindrops_modified_time= get_the_modified_time( 'U' );
$raindrops_period = apply_filters( 'raindrops_new_period', 3 );
$raindrops_Period = 60 * 60 * 24 * $raindrops_period;
if ( $raindrops_now < $raindrops_Period + $raindrops_publish_time ) {
$classes[]= 'raindrops-pub-new ';
}
if ( $raindrops_now < $raindrops_Period + $raindrops_modified_time ) {
$classes[]= 'raindrops-mod-new';
}