ワードプレスのis_year関数の使用方法・解説

概要

is_year 関数は、現在のクエリが年別アーカイブページかどうかを調べるための関数です。この関数は、特定の年に関連する投稿が表示されている際に、条件分岐を行うためによく利用されます。以下の状況で使われることが多いです。

  1. 年別アーカイブの内容を表示するための条件設定
  2. 特定年の投稿のスタイルを変更するため
  3. 年間レポートや統計を表示するための条件判定
  4. 年ごとの特定の情報をカスタマイズする際
  5. カテゴリーやタグページでの年別フィルタリングの実装
  6. ウェブサイトのサイドバーで年別アーカイブを生成する際
  7. クエリに基づいて年別に異なるテンプレートを読み込むため
  8. 404エラーをカスタマイズした年別アーカイブ処理

構文

is_year();

パラメータ

この関数にはパラメータはありません。

戻り値

is_year 関数は、現在のクエリが年別アーカイブページである場合は true を、そうでない場合は false を返します。

関連する関数

is_year 関数に関連する関数は次の通りです:
is_month
is_date
is_archive
get_query_var

使用可能なバージョン

is_year 関数は、WordPress 1.5 以降のバージョンで使用可能です。

コアファイルのパス

is_year 関数は、WordPress のコアファイル /wp-includes/query.php に含まれています。

この関数のアクションでの使用可能性

アクション 使用可能性
mu_plugin_loaded
registered_post_type
plugins_loaded
wp_roles_init
setup_theme
after_setup_theme
set_current_user
init
register_sidebar
wp_loaded
send_headers
parse_query
pre_get_posts
wp
template_redirect
get_header
wp_head

is_year 関数は、特定の WordPress バージョンで非推奨または削除されたことはありません。

サンプルコード

サンプル1: 年別アーカイブの表示

このサンプルコードは、年別アーカイブページでのみ特定のメッセージを表示します。

if (is_year()) {
    echo '<h2>' . get_the_archive_title() . '</h2>';
}

サンプル2: 年別アーカイブ用のスタイル設定

このサンプルでは、年別アーカイブページのスタイルを変更します。

if (is_year()) {
    echo '<style>h1.archive-title { color: blue; }</style>';
}

サンプル3: 年別投稿取得

このコードは、特定の年の投稿を取得し、リスト表示します。

if (is_year()) {
    $year = get_query_var('year');
    $posts = get_posts(array('year' => $year));
    foreach ($posts as $post) {
        setup_postdata($post);
        echo '<li>' . get_the_title() . '</li>';
    }
    wp_reset_postdata();
}

サンプル4: ダイナミックなタイトル設定

年別アーカイブページのタイトルを動的に設定するサンプルコードです。

if (is_year()) {
    add_filter('wp_title', function($title) {
        return 'Year Archive - ' . get_query_var('year');
    });
}

サンプル5: 年別アーカイブ用の404カスタマイズ

年別アーカイブページが404エラーの場合のカスタマイズです。

if (is_year() && !have_posts()) {
    status_header(404);
    nocache_headers();
    include(get_404_template());
    exit;
}

引用元はありませんが、これらのサンプルコードはすべて著作権フリーです。

この関数について質問する


上の計算式の答えを入力してください