WordPress 一覧に「NEW」マークを表示させる

執筆者:

カテゴリ:

WordPressの記事一覧でよくある、公開して一週間の間は「NEW」を表示させるやつ。

毎回テンプレートに直接プログラムを書くのは大変なので、関数を作って、表示させる日付も簡単に変更できるようにしましょう。




実装

functions.phpに、以下のように書きます

function get_my_new( $limit = 7 ) {
  $days = $limit;
  $today = date_i18n('U');
  $entry = get_the_time('U');
  $kiji = date('U',($today - $entry)) / 86400;

  // 出力部分
  if( $days > $kiji ){
    $html = ' class="new"';
  } else {
    $html = '';
  }
  return $html;
}

$html = ‘ class=”new”‘;の部分を、表示させるNEWマークに合わせて変更してください。この場合は、newというclassをくっつける処理ですね。画像を出したり、テキストを出したり、なんでもできます。

$limit = 7の部分で、デフォルトで何日表示させるかを設定できます。

※functions.phpは、以下の記事のように関数ごとにファイルを分けると、使いやすくなります。

WordPress functions.phpを関数ごとに分割して管理しやすくする話

 

あとはテーマ内でNEWマークを表示させたい部分に、

<?php echo get_my_new(); ?>

と書くだけです。

ここで、

<?php echo get_my_new(10); ?>

のように引数を指定してやると、デフォルトでは7日だけど、この部分だけ10日表示させるといったことも可能です。

 

以上、現場からでした。

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です