【WordPress】is_category()とin_category()の違い

WordPress

is_category()関数は「それがカテゴリアーカイブページであるか否か」を返す。

in_category()関数は「それが指定したカテゴリに属しているか否か」を返す。

is_category()関数

is_category()関数は1つの引数を指定でき、引数で指定したカテゴリーアーカイブであるか否かの判定ができます。

if (is_category('column')) {
    echo 'columnカテゴリーアーカイブです。';
}

また、引数が無ければいずれかのアーカイブページか否かを返します。

if (is_category()) {
    echo 'カテゴリーアーカイブです。';
}

in_category()関数

is_category()関数は2つの引数を指定でき、第1引数で指定したカテゴリーに第2引数で指定したポストが含まれているか否かの判定ができます。

if (in_category('column', 16)) {
    echo 'ID16の投稿はcolumnカテゴリーに含まれています。';
}

第1引数は必須ですが、第2引数を省略した場合は現在のループ内でのコンテンツを対象に判定を行うことができます。

if ( have_posts() ) : while ( have_posts() ) : the_post();
    if (in_category('column')) {
        echo get_the_title().'はcolumnカテゴリーに含まれています。';
    }
endif;

コメント

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