wordpressで記事更新をしていると、新着情報のみNEWアイコンなどを付けたいと思いませんか。
HTMLとCSSだけでは新着情報にNEWアイコンの表示はできますが、期間を指定して表示することはできませんよね。そこでwordpressの機能を活用して、期間指定してNEWアイコンを表示する方法をお伝えしていきます。
wordpressの新着情報に期間指定でNEWを表示する
下記コードを記事一覧の出力分のアイコン部分に適用していただくと、新着情報に期間指定でNEWアイコンを表示できます。
<?php
$days = 7;
$today = date_i18n('U');
$entry_day = get_the_time('U');
$keika = date('U',($today - $entry_day)) / 86400;
if ( $days > $keika ):
echo 'new';
endif;
?>
変数$dayの部分で、表示する日数を設定できます。
サンプルコードでは、7日間表示できるようになっていますね。
これを2週間NEWアイコンを表示したい場合には、14と変更すればいいだけです。
実に簡単にwordpressの新着情報の記事一覧に、期間指定でNEWアイコンを表示することができますよね。
wordpressで、もう少し記事一覧っぽいコードにすると下記のようになります。
<?php
$args = array(
'posts_per_page' => 10,
'post_type' => 'post'
);
$wp_query = new WP_Query( $args );
if ( $wp_query->have_posts()):
while ( $wp_query->have_posts()): $wp_query->the_post();
?>
<article>
<?php
$days = 14;
$today = date_i18n('U'); $entry_day = get_the_time('U');
$keika = date('U',($today - $entry_day)) / 86400;
if ( $days > $keika ):
?>
<p class="cat">NEW</p>
<?php endif;?>
<p class="ttl"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></p>
</article>
<?php endwhile; ?>
<?php else : ?>
<?php endif; ?>
11~18行目部分となります。
日数の条件を満たしていないと、NEW部分が出力されないという仕組みですね。
単純に記事一覧を出力するよりは、新着情報をアピールできるので是非参考にしていただければと思います。