概要
wp_get_post_categories
関数は、特定の投稿記事に関連付けられたカテゴリー情報を取得するために使用されます。この関数は、投稿の記事がどのカテゴリーに属しているのかを簡単に確認・表示することができるため、テーマやプラグインの開発において非常に便利です。主に、投稿のメタ情報を表示する際や、カテゴリーごとのフィルタリング機能を実装する際に役立ちます。
使用される状況の例
- 投稿の詳細ページでカテゴリーを表示する
- カテゴリーごとのアーカイブリストを作成する
- 関連投稿をカテゴリー別にフィルタリングする
- サイドバーウィジェットでカテゴリーをリスト表示する
- カテゴリーに基づいてSEO関連のメタ情報を生成する
- 投稿のカテゴリーに基づいてカスタムクエリを作成する
- 管理画面でのカテゴリーの管理や表示
- 投稿に付随するカテゴリー情報をJSON形式でAPI経由で提供する
構文
wp_get_post_categories( $post_id, $args );
パラメータ
$post_id
(int): カテゴリーを取得したい投稿のID。$args
(array): オプションの引数。引数には、’orderby’や’order’などが含まれる。
戻り値
成功した場合、指定した投稿のカテゴリーIDの配列を返します。失敗した場合は空の配列を返します。
関連する関数
使用可能なバージョン
- WordPress 2.0.0以降
コアファイルのパス
wp-includes/category.php
サンプルコード
サンプルコード1: 投稿記事のカテゴリー情報を表示する
このコードは、特定の投稿のカテゴリーを取得し、リストとして表示します。
$post_id = 1; // 投稿IDを指定
$categories = wp_get_post_categories($post_id);
foreach ($categories as $category_id) {
$category = get_category($category_id);
echo $category->name . '<br>'; // カテゴリー名を表示
}
引用元: https://developer.wordpress.org/reference/functions/wp_get_post_categories/
サンプルコード2: 投稿のカテゴリー数を取得する
このサンプルは、特定の投稿に関連付けられたカテゴリーの数を取得して表示します。
$post_id = 1; // 投稿IDを指定
$categories = wp_get_post_categories($post_id);
$category_count = count($categories);
echo 'この投稿は ' . $category_count . ' カテゴリーに属しています。';
引用元: https://developer.wordpress.org/reference/functions/wp_get_post_categories/
サンプルコード3: 投稿が特定のカテゴリーに属しているか確認する
このコードは、特定の投稿が指定したカテゴリーに属しているかどうかを確認します。
$post_id = 1; // 投稿IDを指定
$target_category_id = 5; // 確認したいカテゴリーIDを指定
$categories = wp_get_post_categories($post_id);
if (in_array($target_category_id, $categories)) {
echo 'この投稿は指定したカテゴリーに属しています。';
} else {
echo 'この投稿は指定したカテゴリーには属していません。';
}
引用元: https://developer.wordpress.org/reference/functions/wp_get_post_categories/
サンプルコード4: カテゴリーごとのアーカイブリンクを作成する
このコードは、投稿のカテゴリーに基づいてアーカイブリンクを生成します。
$post_id = 1; // 投稿IDを指定
$categories = wp_get_post_categories($post_id);
foreach ($categories as $category_id) {
$category_link = get_category_link($category_id);
echo '<a href="' . esc_url($category_link) . '">' . get_cat_name($category_id) . '</a><br>';
}
引用元: https://developer.wordpress.org/reference/functions/wp_get_post_categories/
サンプルコード5: APIレスポンスにカテゴリーを含める
このサンプルは、APIレスポンスに投稿のカテゴリー情報を含めます。
$post_id = 1; // 投稿IDを指定
$response = [];
$response['categories'] = wp_get_post_categories($post_id);
header('Content-Type: application/json');
echo json_encode($response);
引用元: https://developer.wordpress.org/reference/functions/wp_get_post_categories/
この関数のアクションでの使用可能性
アクション名 | 使用可能性 |
---|---|
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 |
非推奨または削除されたバージョン
特に非推奨または削除されたワードプレスバージョンはありません。