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

概要

is_month関数は、現在のクエリが特定の月のアーカイブを表示しているかどうかを判断するために使用されます。この関数は特に以下のような機能を実装する際に役立ちます。

  1. 月別アーカイブページのカスタマイズ
  2. アーカイブウィジェットの表示条件設定
  3. 月別コンテンツのフィルター処理
  4. SEO対策のためのメタタグ設定
  5. 特定の月だけに関連するコンテンツの表示
  6. ユーザーインターフェースの動的変更(ボタンやリンクの表示・非表示)
  7. 特定の月に基づくショートコードの実行
  8. メールマガジンの内容の条件付き生成

構文

is_month();

パラメータ

この関数はパラメータを受け取りません。

戻り値

  • true:現在のページが月別アーカイブページである場合
  • false:そうでない場合

関連する関数

使用可能なバージョン

この関数はWordPress 1.5以降で使用可能です。

コアファイルのパス

wp-includes/query.php

サンプルコード

以下に、is_month関数を使用したサンプルコードを5つ示します。

サンプルコード1: 月別アーカイブページのメッセージ表示

if (is_month()) {
    echo '<h2>このページは月別アーカイブです。</h2>';
}

このコードは、現在のページが月別アーカイブページの場合にメッセージを表示します。

サンプルコード2: 特定の月に関連するコンテンツの表示

if (is_month()) {
    // 特定の月のカスタム投稿タイプの表示
    $args = array(
        'post_type' => 'custom_post',
        'date_query' => array(
            array(
                'year' => get_query_var('year'),
                'month' => get_query_var('monthnum'),
            ),
        ),
    );
    $query = new WP_Query($args);
    if ($query->have_posts()) {
        while ($query->have_posts()) {
            $query->the_post();
            the_title();
        }
    }
}

このコードは、現在の月のカスタム投稿タイプを取得し、タイトルを表示します。

サンプルコード3: メタタグの設定

if (is_month()) {
    echo '<meta name="description" content="この月のアーカイブページです。">';
}

このコードは、月別アーカイブページのために特定のメタタグを設定します。

サンプルコード4: 月別アーカイブリンクの表示

if (is_month()) {
    echo '<a href="' . get_month_link(get_query_var('year'), get_query_var('monthnum')) . '">この月のアーカイブを見る</a>';
}

このコードは、現在の月のアーカイブへのリンクを表示します。

サンプルコード5: 月に基づいたショートコードの実行

if (is_month()) {
    echo do_shortcode('[custom_shortcode]');
}

このコードは、月別アーカイブページで特定のショートコードを実行します。

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

アクション 使用例
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

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

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


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