• 赤色のリンクは、まだ日本語Codexに存在しないページ・画像です。英語版と併せてご覧ください。(詳細

このWikiはいつでも誰でも編集できます

テンプレートタグ/get the category

提供: WordPress Codex 日本語版
移動先: 案内検索

オブジェクト(カテゴリー)の配列を返します。各オブジェクトは現在の投稿が属するカテゴリーを表します。 このタグはパラメータとして投稿 ID を渡すことで、ループの外でも使うことができます。

このテンプレートタグは、デフォルトの "category" タクソノミーに含まれる結果のみを返します。 カスタムタクソノミー(カスタム分類)の場合は get_the_terms を使ってください。

使い方

<?php get_the_category( $id ); ?>

パラメータ

$id
整数) (オプション) 投稿 ID。
初期値: $post->ID (現在の投稿の ID)

用例

投稿に付けられた全てのカテゴリーをリンク形式で表示します。 この例はループの中で使わなければなりません。 なお、get_the_category_list() を使っても同じことができます。

<?php
$categories = get_the_category();
$separator = ' ';
$output = '';
if ( $categories ) {
	foreach( $categories as $category ) {
		$output .= '<a href="' . get_category_link( $category->term_id ) . '" title="' 
			. esc_attr( sprintf( __( "View all posts in %s" ), $category->name ) ) 
			. '">' . $category->cat_name . '</a>' . $separator;
	}
echo trim( $output, $separator );
}
?>

カテゴリーの画像を表示

次の例は cat_ID を画像のファイル名に使ってカテゴリーの画像を表示します。 また、画像の alt 属性に cat_name を設定します。 他のメンバー変数を代わりに使うこともできます。

<?php 
foreach( ( get_the_category() ) as $category ) { 
    echo '<img src="http://example.com/images/' . $category->cat_ID . '.jpg" alt="' . $category->cat_name . '" />'; 
} 
?>

先頭のカテゴリーの名前のみ表示

カテゴリーオブジェクトの配列の先頭要素([0])を出力します。

<?php
$category = get_the_category(); 
echo $category[0]->cat_name;
?>

カテゴリー名をカテゴリーアーカイブのページへリンクさせるには次のコードを使います。

<?php 
$category = get_the_category(); 
if ( $category[0] ) {
echo '<a href="' . get_category_link( $category[0]->term_id ) . '">' . $category[0]->cat_name . '</a>';
}
?>

ループの外で投稿のカテゴリーを取得

<?php
global $post;
$categories = get_the_category( $post->ID );
var_dump( $categories );
?>

戻り値

(配列) 
カテゴリーのオブジェクトの配列

返されるオブジェクトのメンバー変数

term_id
(整数) カテゴリー ID
name
(文字列) カテゴリー名
slug
(文字列) カテゴリーのスラッグ
term_group
(整数) カテゴリーのグループ
term_taxonomy_id
(整数) カテゴリーのタクソノミー ID
taxonomy
(文字列) タクソノミー名 'category'
description
(文字列) カテゴリーの説明
parent
(整数) 親カテゴリーの ID
count
(整数) カテゴリーに登録されている投稿の数
object_id
(整数) オブジェクト ID
cat_ID
(整数) カテゴリー ID (term_id にも同じ値が入る)
category_count
(整数) カテゴリーに登録されている投稿の数(count にも同じ値が入る)
category_description
(文字列) カテゴリーの説明(description にも同じ値が入る)
cat_name
(文字列) カテゴリー名(name にも同じ値が入る)
category_nicename
(文字列) カテゴリースラッグ名 - カテゴリー名から生成されたスラッグ(slug にも同じ値が入る)
category_parent
(整数) 親カテゴリーの ID - 親がなければ 0 が入る(parent にも同じ値が入る)

参考

  • get_the_category()get_the_terms() を経由して wp_get_object_terms() を使用します。そして wp_get_object_terms()sanitize_term() または sanitize_term_field() を呼び出し、その中で下記のメンバー変数が整数型に変換されます:
term_id, term_group, term_taxonomy_id, parent, count, および object_id
  • バージョン 2.3 より前のカテゴリーオブジェクトと互換性を持たせるため、get_the_category()_make_cat_compat() を使います。これにより下記のメンバー変数に適切な値が入ります:
cat_ID, category_count, category_description, cat_name, category_nicename, および category_parent

変更履歴

  • バージョン 0.71 から導入されました。

ソースファイル

get_the_category()wp-includes/category-template.php にあります。


カテゴリータグ: the_category(), the_category_rss(), single_cat_title(), category_description(), wp_dropdown_categories(), wp_list_categories(), get_the_category(), get_the_category_by_ID(), get_category_by_slug(), get_the_category_list(), get_category_parents(), get_category_link(), is_category(), in_category()


関数リファレンステンプレートタグ目次もご覧ください。


最新英語版: WordPress Codex » Function Reference/get the category最新版との差分