タクソノミー取得によく使う関数
カスタム投稿タイプでタクソノミーを取得したいとき、名前が似ていてよく忘れるのでまとめです。
基本的な情報はこのような形です。
「タクソノミー」・・・custom_cat
「ターム」・・・ブラジル(burazil)、ID->14
____サントス(santos)、ID->17
_____サンパウロ(sanpauro)、ID->21
「カスタム投稿タイプ」・・・ID->77、ブラジル、サントスのタクソノミー持ち
get_the_terms
指定された投稿IDに紐づいている指定されたタクソノミーのタームを返します。
get_the_terms( $id, $taxonomy );
get_the_terms(77,'custom_cat');array(2) {[0]=>object(WP_Term)#358 (11) {["term_id"]=>int(14)["name"]=>string(12) "ブラジル"["slug"]=>string(6) "brazil"["term_group"]=>int(0)["term_taxonomy_id"]=>int(14)["taxonomy"]=>string(10) "custom_cat"["description"]=>string(0) ""["parent"]=>int(0)["count"]=>int(2)["filter"]=>string(3) "raw"["term_order"]=>string(1) "0"}[1]=>object(WP_Term)#359 (11) {["term_id"]=>int(17)["name"]=>string(12) "サントス"["slug"]=>string(6) "santos"["term_group"]=>int(0)["term_taxonomy_id"]=>int(17)["taxonomy"]=>string(10) "custom_cat"["description"]=>string(0) ""["parent"]=>int(14)["count"]=>int(1)["filter"]=>string(3) "raw"["term_order"]=>float(0.1)}}
get_term_children
指定されたタクソノミ-に紐づいた指定されたタームIDの子タームのIDを配列で返します。
get_term_children( $term_id, $taxonomy );
get_term_children(14,'custom_cat');array(2) {[0]=>int(17)[1]=>int(21)}
get_term_link
指定されたタームのアーカイブページのリンクを返します。
get_term_link( $term, $taxonomy );
get_term_link('brazil','custom_cat');string(39) "http://sample.local/custom-slug/brazil/"
get_terms
指定されたタクソノミー、またはタクソノミーリストに含まれるタームを返します。
タクソノミーの取得関数の中で一番使用する関数だと思います。
argsにはオプションを指定することができます。そのオプションにより取得するタームをいろいろな条件で絞り込めます。
get_terms( $taxonomies, $args );
get_terms('custom_cat',['parent' => 14]);array(2) {[0]=>object(WP_Term)#4289 (11) {["term_id"]=>int(17)["name"]=>string(12) "サントス"["slug"]=>string(6) "santos"["term_group"]=>int(0)["term_taxonomy_id"]=>int(17)["taxonomy"]=>string(10) "custom_cat"["description"]=>string(0) ""["parent"]=>int(14)["count"]=>int(1)["filter"]=>string(3) "raw"["term_order"]=>float(0.1001)}[1]=>object(WP_Term)#4287 (11) {["term_id"]=>int(21)["name"]=>string(15) "サンパウロ"["slug"]=>string(7) "sanpuro"["term_group"]=>int(0)["term_taxonomy_id"]=>int(21)["taxonomy"]=>string(10) "custom_cat"["description"]=>string(0) ""["parent"]=>int(14)["count"]=>int(1)["filter"]=>string(3) "raw"["term_order"]=>float(0.10011)}}