当サイト、Codex 日本語版は今後積極的な更新は行わない予定です。後継となる新ユーザーマニュアルは、https://ja.wordpress.org/support/ にあります。
万が一、当サイトで重大な問題を発見した際などは、フォーラムWordSlack #docs チャンネルでお知らせください。</p>

「テンプレートタグ/get the category」の版間の差分

提供: WordPress Codex 日本語版
移動先: 案内検索
(en:Function Reference/get the category 13:25, 9 July 2014 Adamwalter 版を反映して、残りを和訳。)
1行目: 1行目:
{{Old}}
+
<div id="Description">
 
+
 
== 説明 ==
 
== 説明 ==
 +
</div>
 +
 +
オブジェクト(カテゴリー)の配列を返します。各オブジェクトは現在の投稿が属するカテゴリーを表します。
 +
このタグはパラメータとして投稿 ID を渡すことで、[[The Loop|ループ]]の外でも使うことができます。
  
このテンプレートタグ '''<code>get_the_category</code>''' は、現在の記事が属するカテゴリをオブジェクト形式で返します。このタグはパラメータとして投稿IDを渡すことで、[[The Loop|ループ]]の外でも使うことが出来ます。
+
このテンプレートタグは、デフォルトの "category" タクソノミーに含まれる結果のみを返します。
 +
カスタムタクソノミー(カスタム分類)の場合は [[関数リファレンス/get the terms|get_the_terms]] を使ってください。
  
 
<div id="Usage">
 
<div id="Usage">
9行目: 13行目:
 
</div>
 
</div>
  
  <?php get_the_category( $post_id ); ?>
+
  <?php get_the_category( $id ); ?>
  
 
<div id="Parameters">
 
<div id="Parameters">
15行目: 19行目:
 
</div>
 
</div>
  
{{Parameter|$post_id|整数|投稿 ID。|オプション|$post->ID(現在の投稿ID)}}
+
{{Parameter|id|整数|投稿 ID。|オプション|$post->ID (現在の投稿の ID)}}
  
 
<div id="Examples">
 
<div id="Examples">
22行目: 26行目:
  
 
<div id="Show_All_Categories_as_Links">
 
<div id="Show_All_Categories_as_Links">
=== 全てのカテゴリをリンクで表示 ===
+
=== 全てのカテゴリーをリンクで表示 ===
 
</div>
 
</div>
  
ポストに登録された全てのカテゴリをリンクで表示します。これは[[get_the_category_list|get_the_category_list()]]と同様の動きです。
+
投稿に付けられた全てのカテゴリーをリンク形式で表示します。
 +
この例は[[ループ]]の中で使わなければなりません。
 +
なお、[[テンプレートタグ/get_the_category_list|get_the_category_list()]] を使っても同じことができます。
  
<?php
+
<pre>
$categories = get_the_category();
+
<?php
$separator = ' ';
+
$categories = get_the_category();
$output = '';
+
$separator = ' ';
if($categories){
+
$output = '';
foreach($categories as $category) {
+
if ( $categories ) {
$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;
+
foreach( $categories as $category ) {
}
+
$output .= '<a href="' . get_category_link( $category->term_id ) . '" title="'  
echo trim($output, $separator);
+
. esc_attr( sprintf( __( "View all posts in %s" ), $category->name ) )  
}
+
. '">' . $category->cat_name . '</a>' . $separator;
?>
+
}
 +
echo trim( $output, $separator );
 +
}
 +
?>
 +
</pre>
 +
 
 +
<div id="Show_Category_Images">
 +
=== カテゴリーの画像を表示 ===
 +
</div>
 +
 
 +
次の例は <tt>cat_ID</tt> を画像のファイル名に使ってカテゴリーの画像を表示します。
 +
また、画像の <tt>alt</tt> 属性に <tt>cat_name</tt> を設定します。
 +
他のメンバー変数を代わりに使うこともできます。
 +
 
 +
<pre>
 +
<?php
 +
foreach( ( get_the_category() ) as $category ) {
 +
    echo '<img src="http://example.com/images/' . $category->cat_ID . '.jpg" alt="' . $category->cat_name . '" />';
 +
}
 +
?>
 +
</pre>
 +
 
 +
<div id="Show_the_First_Category_Name_Only">
 +
=== 先頭のカテゴリーの名前のみ表示 ===
 +
</div>
 +
 
 +
カテゴリーオブジェクトの配列の先頭要素(<code>[0]</code>)を出力します。
 +
 
 +
<pre>
 +
<?php
 +
$category = get_the_category();
 +
echo $category[0]->cat_name;
 +
?>
 +
</pre>
 +
 
 +
カテゴリー名をカテゴリーアーカイブのページへリンクさせるには次のコードを使います。
 +
 
 +
<pre>
 +
<?php
 +
$category = get_the_category();
 +
if ( $category[0] ) {
 +
echo '<a href="' . get_category_link( $category[0]->term_id ) . '">' . $category[0]->cat_name . '</a>';
 +
}
 +
?>
 +
</pre>
 +
 
 +
<div id="Get_the_Post_Categories_From_Outside_the_Loop">
 +
=== ループの外で投稿のカテゴリーを取得 ===
 +
</div>
 +
 
 +
<pre>
 +
<?php
 +
global $post;
 +
$categories = get_the_category( $post->ID );
 +
var_dump( $categories );
 +
?>
 +
</pre>
  
 
<div id="Return_Values">
 
<div id="Return_Values">
== 返り値 ==
+
== 戻り値 ==
 
</div>
 
</div>
  
;(配列)
+
; <tt>(配列)</tt> : カテゴリーのオブジェクトの配列
:カテゴリオブジェクトの配列
+
  
 
<div id="Member_Variables_in_Returned_Objects">
 
<div id="Member_Variables_in_Returned_Objects">
==== 返す配列内のメンバ変数 ====
+
==== 返されるオブジェクトのメンバー変数 ====
 
</div>
 
</div>
  
 
;term_id
 
;term_id
:(文字列)カテゴリID
+
: (文字列) カテゴリー ID
  
 
;name
 
;name
:(文字列)カテゴリ名
+
: (文字列) カテゴリー名
  
 
;slug
 
;slug
:(文字列)カテゴリスラッグ名
+
: (文字列) カテゴリーのスラッグ
  
 
;term_group
 
;term_group
:(文字列)カテゴリグループ
+
: (文字列) カテゴリーのグループ
  
 
;term_taxonomy_id
 
;term_taxonomy_id
:(文字列)カテゴリタクソノミーID
+
: (文字列) カテゴリーのタクソノミー ID
  
 
;taxonomy
 
;taxonomy
:(文字列)タクソノミー名
+
: (文字列) タクソノミー名 <code>'category'</code>
  
 
;description
 
;description
:(文字列)カテゴリの説明
+
: (文字列) カテゴリーの説明
  
 
;parent
 
;parent
:(文字列)親カテゴリ
+
: (文字列) 親カテゴリーの ID
  
 
;count
 
;count
:(文字列)カテゴリに登録されている記事数
+
: (文字列) カテゴリーに登録されている投稿の数
  
;filter
+
;object_id
:(文字列)
+
: (文字列) オブジェクト ID
  
 
;cat_ID
 
;cat_ID
:(文字列)カテゴリID
+
: (文字列) カテゴリー ID ('''term_id''' にも同じ値が入る)
  
 
;category_count
 
;category_count
:(文字列)カテゴリに登録されている記事数
+
: (文字列) カテゴリーに登録されている投稿の数('''count''' にも同じ値が入る)
  
 
;category_description
 
;category_description
:(文字列)カテゴリの説明
+
: (文字列) カテゴリーの説明('''description''' にも同じ値が入る)
  
 
;cat_name
 
;cat_name
:(文字列)カテゴリ名
+
: (文字列) カテゴリー名('''name''' にも同じ値が入る)
  
 
;category_nicename
 
;category_nicename
:(文字列)カテゴリスラッグ名
+
: (文字列) カテゴリースラッグ名 - カテゴリー名から生成されたスラッグ('''slug''' にも同じ値が入る)
  
 
;category_parent
 
;category_parent
:(文字列)親カテゴリ
+
: (文字列) 親カテゴリーの ID - 親がなければ 0 が入る('''parent''' にも同じ値が入る)
 +
 
 +
<div id="Changelog">
 +
== 変更履歴 ==
 +
</div>
 +
 
 +
* [[Version 0.71|0.71]] から導入されました。
 +
 
 +
<div id="Source Code">
 +
== ソースファイル ==
 +
</div>
 +
 
 +
<tt>get_the_category()</tt> は {{Trac|wp-includes/category-template.php}} にあります。
  
 
<div id="Related">
 
<div id="Related">
== 関連 ==
+
== 関連項目 ==
 
</div>
 
</div>
  
 
{{Tag Category Tags}}
 
{{Tag Category Tags}}
{{PHP Function Tag Footer}}
 
  
{{DEFAULTSORT:The_category}}
+
{{Tag Footer}}
 +
 
 +
{{原文|Function Reference/get the category|144775}} <!-- 13:25, 9 July 2014 Adamwalter 版 -->
 +
 
 +
{{DEFAULTSORT:Get_the_category}}
 +
[[Category:テンプレートタグ]]
  
[[en:Template Tags/get_the_category]]
+
[[en:Function Reference/get the category]]

2014年8月9日 (土) 19:07時点における版

オブジェクト(カテゴリー)の配列を返します。各オブジェクトは現在の投稿が属するカテゴリーを表します。 このタグはパラメータとして投稿 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 にも同じ値が入る)

変更履歴

  • 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最新版との差分