サイト型トップページの作り方を公開しています!Check

Cocoon|新着記事に期間限定で「NEW!」を表示する方法

アイキャッチ|new Cocoon
Cocoon
記事内に広告が含まれています

記事タイトルの前にNEW!をつけたいな。

この記事では、Cocoonテーマを使用しているサイトで、新着記事に「NEW!」ラベルを一定期間だけ表示する方法を解説します。PHPコードとCSSを使った手順をに説明しますのでぜひ参考にしてください。

スポンサーリンク

この記事を書いた人

はるみです
吹き出し/女性
  • ブログ好きな40代主婦
  • CocoonサイトをCSSでカスタマイズ
  • 2020年1月1日ブログ開設
  • ドメインパワー40
  • 2023年~有料記事公開
    • →累計370件(月間約20件)購入いただいています

新着表示「NEW!」の表示条件

Cocoonで「NEW!」ラベルを表示させる場所や条件は次の通りです。

表示場所

  1. トップページ
  2. アーカイブページ
  3. 記事本文ページ

以上のページのすべての記事タイトル前に「NEW!」ラベルが表示されます。

表示条件

新着記事と判別する基準は以下の3つです。

  1. 投稿後の日数(例:投稿から3日以内)
  2. 投稿数(新着として扱う記事数)
  3. 日数+投稿数の組み合わせ

今回の記事では、「投稿後の日数」で判別する方法を採用します。

スポンサーリンク

新着記事に「NEW!」を表示するカスタマイズの手順

カスタマイズ前にはバックアップをとりましょう

PHPコードの編集(functions.php)

まず、以下のPHPコードを WordPressのfunctions.phpファイル に追加します。これにより、投稿が新着(例:3日以内)であれば「NEW!」ラベルをタイトルの前に追加します。

  1. 管理画面の「外観」から「テーマファイルエディター」
    • Cocoon Child: テーマのための関数 (functions.php)をクリックします
  2. 元から書いているコード(テーマ用関数)は消さずにPHPを記述します
    • //以下に子テーマ用の関数を書く、から下の行に追加しましょう

子テーマ(Cocoon child)が選択されていることを確認します

phpの記述について
//新着記事にNEW
add_filter('the_title', function($title, $id) {
	$days = 3;// 表示期間3日

  if (get_post_type($id) == 'post') {
	  $now = date_i18n('U');// 現在の時刻取得
	  $post_time = get_the_time('U',$id);// 投稿ページの投稿日時取得
	  $last = $now - ($days * 24 * 60 * 60);// 表示期間内であるかどうか判定
    if ($post_time > $last) {
      $title = '<span class="new-txt">NEW!</span>' . $title;
    }
  }
  return $title;
}, 20, 2);

コードの概要

  • $days = 3;
    新着と判別する期間を設定(例:3日間)。変更可能。
  • 新着判定
    投稿日時が現在時刻から3日以内なら「NEW!」をタイトル前に表示。
  • 投稿タイプの確認
    通常の投稿(postタイプ)のみに適用されます。他のカスタム投稿タイプには影響を与えません。

CSSで「NEW!」ラベルのデザインを整える

続いて、表示する「NEW!」ラベルのデザインをCSSでカスタマイズします。

シンプルなデザイン

このCSSではNEW!(文字色:赤、背景色:なし)になります。

/* 新着記事のNEW! */
.new-txt {
    color: #ff0000; /* 文字色:赤 */
    margin-right: 5px; /* 右側の余白 */
}

背景色付きのデザイン

背景色を付ける場合はこちら。NEW!

/* 新着記事のNEW!(背景色付き) */
.new-txt {
    background-color: #ff0000; /* 背景色:赤 */
    color: #fff; /* 文字色:白 */
    font-size: .8em;
    padding: .1em .5em; /* 内側余白 */
    border-radius: 1px; /* 角の丸み */
    margin-right: 5px; /* 右側の余白 */
}

点滅するデザイン

点滅してより目立たせるときは以下のCSSを追加します。NEW!

/* 点滅効果 */
.new-txt {
    animation: blinking 1s ease-in-out infinite alternate;
}

@keyframes blinking {
    0% { opacity: 0; }
    100% { opacity: 1; }
}

プレビューで確認

全ての設定が完了したら、サイトをプレビューして「NEW!」ラベルが正常に表示されるか確認してください。問題がある場合は、コードやCSSにミスがないか再度チェックしましょう。

スポンサーリンク

まとめ|Cocoonテーマで新着記事を目立たせるポイント

  • 「NEW!」ラベル を使うことで、新着記事が訪問者の目に留まりやすくなります。
  • 投稿日時やCSSデザインを自由に調整できるため、自サイトのデザインに適した表示をカスタマイズ可能です。
  • タイトルの装飾を活用して、訪問者のエンゲージメントを向上させましょう。

この記事を参考に、新着記事を目立たせる機能をぜひ取り入れてみてください!

Comment コメントはこちらへ

タイトルとURLをコピーしました