概要
get_object_taxonomies
関数は、特定の投稿タイプに関連するタクソノミー(カテゴリーやタグなど)の情報を取得するための関数です。この関数は通常、カスタム投稿タイプやカテゴライズのニーズがある場合に使用されます。主に以下のようなシナリオで利用されます。
- カスタム投稿タイプに関連付けられたタクソノミーを取得する。
- 特定のタクソノミーに基づいて投稿をフィルタリングする。
- 自作の管理パネルやウィジェットでタクソノミーを表示する。
- テーマやプラグインでタクソノミーを動的に追加・管理する。
- タクソノミーのメタデータを取得して表示する。
- REST APIを通じてタクソノミー情報を提供する。
- カスタムクエリにおいてタクソノミーを使用する。
- タクソノミーを用いたセクション分けやナビゲーションを構築する。
構文
get_object_taxonomies( string|object $object, string $args = 'names' )
パラメータ
$object
: 投稿タイプ名、WP_Postオブジェクト、またはタクソノミーを取得するオブジェクト。$args
: 取得する情報の形式。デフォルトはnames
(タクソノミーの名前)。
戻り値
指定した投稿タイプに関連するタクソノミーのリスト(文字列または配列)。
関連する関数
バージョン情報
この関数はWordPress 2.3.0以降で利用可能です。
コアファイルパス
wp-includes/taxonomy.php
サンプルコード
以下に、get_object_taxonomies
関数の使用例を5つ示します。
サンプルコード 1
// 投稿タイプ 'book' に関連するタクソノミーを取得
$taxonomies = get_object_taxonomies( 'book' );
print_r( $taxonomies );
このサンプルでは、カスタム投稿タイプ「book」に関連するタクソノミーの名前を取得して表示しています。
サンプルコード 2
// 投稿オブジェクトからタクソノミーを取得
$post = get_post(1); // 投稿ID 1を取得
$taxonomies = get_object_taxonomies( $post );
print_r( $taxonomies );
このサンプルでは、特定の投稿(ID:1)から関連するタクソノミーを取得し、表示しています。
サンプルコード 3
// タクソノミーの情報を詳細に取得
$taxonomies = get_object_taxonomies( 'event', 'objects' );
foreach($taxonomies as $taxonomy) {
echo $taxonomy->label . '<br>';
}
このサンプルは、投稿タイプ「event」に関連するタクソノミーのラベルを詳細に表示しています。
サンプルコード 4
// すべての存在するタクソノミーを取得
$taxonomies = get_object_taxonomies( null );
print_r( $taxonomies );
このサンプルでは、全投稿タイプに関連するすべてのタクソノミーを取得して表示します。
サンプルコード 5
// 特定の引数でタクソノミーを取得
$taxonomies = get_object_taxonomies( 'post', 'names' );
echo implode(', ', $taxonomies);
このサンプルでは、デフォルトの投稿タイプ「post」に関連するタクソノミーの名前をカンマで区切って表示しています。
この関数のアクションでの使用可能性
アクション名 | 使用可能性 |
---|---|
mu_plugin_loaded | 〇 |
registered_post_type | 〇 |
plugins_loaded | 〇 |
wp_roles_init | |
setup_theme | 〇 |
after_setup_theme | 〇 |
set_current_user | |
init | 〇 |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | 〇 |
wp | 〇 |
template_redirect | |
get_header | |
wp_head |
この表では、get_object_taxonomies
関数が使用されるアクションを示しており、特定のアクションでの使用可能性を確認できます。