パソ君
・WordPressの新着記事にNEWマークを表示する方法は?
こんな疑問にお答えします。
WordPressの記事にて「NEW」マークがついてるサイトありますよね。
この表示があると、新着記事が目立ちやすくなります。
実はこれ簡単に実装可能です。
ジト
すぐにできるよ!
ということで、この記事では「WordPressの新着記事にNEWマークを表示」について解説していきます!
この記事でわかること
WordPressの新着記事にNEWマークを表示
目次
【簡単】WordPressの新着記事にNEWマークを表示【日付】
まずは日付編。
〇日以内に投稿された記事に対して「NEW」をつけるというプログラムを記述します。
それがこちら↓
<?php
$days = 7; // NEWを付ける期間
$today = date_i18n('U'); // 現在の時間
$entry = get_the_time('U'); // 投稿日の時間
$term = date('U',($today - $entry)) / 86400;
if( $days > $term ){
echo '<span class="new">NEW</span>';
}
?>
$days = 7;
:期間を7日に設定$today = date_i18n('U');
:現在の時間を取得$entry = get_the_time('U');
:投稿日の時間を取得$term = date('U',($today - $entry)) / 86400;
:現在の時間から投稿日の時間を引いて、経過した日数を計算。86400は、1日の秒数。if( $days > $term )
:もし経過した日数が「NEW」というラベルを付ける期間よりも短い場合echo '<span class="new">NEW</span>';
:「NEW」というラベルを表示
7という数字を修正すれば、〇日以内の日付をカスタマイズすることができます。
【簡単】WordPressの新着記事にNEWマークを表示【件数】
続いて件数編。
最新の〇件数までは「NEW」をつけるというプログラムを記述します。
それがこちら↓
<?php
$the_query = new WP_Query(array(
'post_type' => 'work',
'posts_per_page' => 6
));
while($the_query->have_posts()) : $the_query->the_post();
if ($the_query->current_post < 3) {
echo '<span class="new">NEW</span>';
}
endwhile;
wp_reset_postdata();
?>
このコードは最新の3件に “NEW” マークを表示する記載をしております。
「$the_query->current_post」の部分で、その記事が何件目かを取得。
もし3件以内だったら「NEW」をつけるという意味になります。
【簡単】WordPressの新着記事にNEWマークを表示【日付/件数】
最後に「日付」+「件数」を考慮したものを紹介します。
〇日以内、かつ最新記事〇件数目までだったら「NEW」をつけるというプログラムです。
コードがこちら↓
<?php
$days = 7; // NEWを付ける期間
$the_query = new WP_Query(array(
'post_type' => 'work',
'posts_per_page' => 6
));
while($the_query->have_posts()) : $the_query->the_post();
$today = date_i18n('U'); // 現在の時間
$entry = get_the_time('U'); // 投稿日の時間
$term = date('U',($today - $entry)) / 86400;
if ($the_query->current_post < 3 && $days > $term) {
echo '<span class="new">NEW</span>';
}
endwhile;
wp_reset_postdata();
?>
7日以内、かつ最新3件までにNEWをつけるようにしております。
カスタマイズする場合は、数字を修正すればOK。
【簡単】WordPressの新着記事にNEWマークを表示【日付/件数】:まとめ
- 〇日以内に投稿された記事に対して「NEW」をつける
- 最新の〇件数までは「NEW」をつける
- 〇日以内、かつ最新記事〇件数目までだったら「NEW」をつける
ジト
新着記事にNEWをつけたい場合試してみてね!