関数の概要
get_object_taxonomies()
は、指定されたオブジェクトタイプ(通常は投稿タイプ)に関連付けられているすべてのタクソノミーを取得するための関数です。この関数を使うことで、特定の投稿タイプに適用されるカスタムタクソノミーや標準タクソノミー(カテゴリやタグなど)を一覧表示することができます。例えば、投稿タイプ「post」に対して「category」や「post_tag」などのタクソノミーが関連付けられています。
パラメータの説明
- $object (string|array): 対象とするオブジェクトタイプ(投稿タイプ)の名前、またはその配列。例えば、
'post'
、'page'
、'movie'
などの投稿タイプの名前を指定します。配列で複数の投稿タイプを指定することも可能です。 - $output (string): 結果の出力形式を指定します。
'names'
(デフォルト)を指定するとタクソノミーの名前の配列を返し、'objects'
を指定するとタクソノミーオブジェクトの配列を返します。
戻り値
指定されたオブジェクトタイプに関連付けられたタクソノミーの配列を返します。出力形式によって、タクソノミー名の配列(文字列)またはタクソノミーオブジェクトの配列となります。
使用例
// 投稿タイプ 'post' に関連付けられたすべてのタクソノミー名を取得
$post_taxonomies = get_object_taxonomies( 'post' );
echo '<h2>Post Type "post" Taxonomies:</h2>';
foreach ( $post_taxonomies as $taxonomy ) {
echo '<p>' . $taxonomy . '</p>';
}
// カスタム投稿タイプ 'movie' に関連付けられたすべてのタクソノミーオブジェクトを取得
$movie_taxonomies = get_object_taxonomies( 'movie', 'objects' );
echo '<h2>Custom Post Type "movie" Taxonomies:</h2>';
foreach ( $movie_taxonomies as $taxonomy ) {
echo '<p>' . $taxonomy->label . ' (' . $taxonomy->name . ')</p>';
}
// 配列で複数の投稿タイプを指定
$multiple_post_types = array( 'post', 'page', 'movie' );
$all_taxonomies = get_object_taxonomies( $multiple_post_types );
echo '<h2>Taxonomies for Post Types "post", "page", and "movie":</h2>';
foreach ( $all_taxonomies as $taxonomy ) {
echo '<p>' . $taxonomy . '</p>';
}
関連する関数
register_taxonomy()
: 新しいタクソノミーを登録するための関数。この関数を使用して、新たなタクソノミーをカスタム投稿タイプや既存の投稿タイプに関連付けることができます。unregister_taxonomy()
: 既存のタクソノミーを解除するための関数。不要になったタクソノミーを投稿タイプから削除するために使用します。get_taxonomy()
: 特定のタクソノミーの詳細を取得するための関数。指定したタクソノミーのオブジェクトを取得して詳細情報を確認できます。get_taxonomies()
: 登録されているすべてのタクソノミーを取得するための関数。全タクソノミーを一覧表示する場合に使用します。register_taxonomy_for_object_type()
: 既存のタクソノミーを特定のオブジェクトタイプに関連付けるための関数。新たに追加した投稿タイプに既存のタクソノミーを適用する場合に便利です。