2024年06月13日
WP関数:get_category()
この関数の説明
WP関数の get_category() は、カテゴリIDから、カテゴリの情報を取得する関数です。
関数
get_category( $category, $output, $filter )
パラメータ
$category(整数)(必須)
カテゴリーIDを指定します。
$output(文字列) (オプション)
どの様な形式で取り出すのか?を指定します。
'OBJECT' :オブジェクト形式(デフォルト)
'ARRAY_A' :連想配列形式
'ARRAY_N' :添字形式
$filter(文字列) (オプション)
デフォルト('raw')では WordPress が予め定義したフィルターはどれも適用されません。
初期値: 'raw'
戻り値
カテゴリ情報が指定した形式で返されます。
下記はオブジェクト形式又は連想配列形式の主要プロパティ又はキーです。
| プロパティ | 名前 | 解説 |
| cat_ID | カテゴリID | 文書を抽出するWP_Query($args)で利用できるキーになります
例)'cat' => XX |
| slug | カテゴリのスラッグ名 | 文書を抽出するWP_Query($args)で利用できるキー
例)'category_name' => XX |
| name | カテゴリ名 | 表示されるカテゴリ名 |
| category_parent | 親のカテゴリID | 親カテゴリを調べる時に利用します
0:親はありません n:親のカテゴリIDです |
| category_count | カテゴリの投稿数 | このカテゴリの投稿数を表示する時に利用します |
事例
①投稿に設定されている親カテゴリの情報を取得します(オブジェクト形式)
<?php
$cat = get_the_category(); // 投稿のカテゴリ情報を取得
$p_cat_id = $cat[0] -> category_parent; // 親のカテゴリIDの取得
$p_cat = get_category($p_cat_id); // カテゴリ情報の取得
echo 'スラッグ名='.$p_cat -> slug.'<br>'; // カテゴリのスラッグ名
echo 'カテゴリ名='.$p_cat -> name.'<br>'; // カテゴリ名
?>
<pre>
<?php print_r($p_cat);?>
</pre>
■2~3行目:投稿に設定されている親カテゴリのIDを所得します。
■4~6行目:親カテゴリの情報を取得して表示します。
■下記が表示されます(参考)
スラッグ名=html
カテゴリ名=HTML言語
WP_Term Object
(
[term_id] => 9
[name] => HTML言語
[slug] => html
[term_group] => 0
[term_taxonomy_id] => 9
[taxonomy] => category
[description] =>
[parent] => 0
[count] => 0
[filter] => raw
[cat_ID] => 9
[category_count] => 0
[category_description] =>
[cat_name] => HTML言語
[category_nicename] => html
[category_parent] => 0
)
②投稿に設定されている親カテゴリの情報を取得します(連想配列形式)
<?php
$cat = get_the_category(); // 投稿のカテゴリ情報を取得
$p_cat_id = $cat[0] -> category_parent; // 親のカテゴリIDの取得
$p_cat = get_category($p_cat_id,'ARRAY_A'); // カテゴリ情報の取得
echo 'スラッグ名='.$p_cat['slug'].'<br>'; // カテゴリのスラッグ名
echo 'カテゴリ名='.$p_cat['name'].'<br>'; // カテゴリ名
?>
<pre>
<?php print_r($p_cat);?>
</pre>
■4行目:連想配列形式で情報を取得しています。
■5~6行目:連想配列なので呼び出し方がオブジェクトとは異なります。
■下記が表示されます(参考)
スラッグ名=html
カテゴリ名=HTML言語
Array
(
[term_id] => 9
[name] => HTML言語
[slug] => html
[term_group] => 0
[term_taxonomy_id] => 9
[taxonomy] => category
[description] =>
[parent] => 0
[count] => 0
[filter] => raw
[cat_ID] => 9
[category_count] => 0
[category_description] =>
[cat_name] => HTML言語
[category_nicename] => html
[category_parent] => 0
)
関連情報
関連関数は カテゴリ関連関数 を参照してください。