WordPressの新着記事に「new」をつける
2023.12.19 09:00
2023.12.18 09:51

新着記事にnewをつけてみました。
コードはこんな感じです。共通で使えるように「templates」の中に「badge_new.php」としてパーツで切り出しました。
<?php
/**
* 記事 - NEW表示
*
* @package WordPress
*/
// 表示する日数(n日以内)
$days = 7;
// 今日の日付を取得
$today = date_i18n('U');
// 対象の記事投稿日時を取得
$date = $args['date'];
// 差分の日付を計算
$post_date = date('U' ,($today - $date)) / 86400;
?>
<?php if( $days > $post_date ):?>
<span class="c-badge__new">NEW!!</span>
<?php endif;?>
newを表示する日数を指定し、送られてきた投稿日と差分をUNIXTIMEで比較するって感じですね。
読み込み元はこんな感じです。
<?php get_template_part('templates/badge_new', null, ['date' => get_the_time('U')]);?>
ポイントは、渡す変数名を「date」とし、投稿日をUNIXTIME指定しているところですね。理屈はシンプルですね。
今回は以上です!