web-dev-qa-db-ja.com

Single.phpワードプレスでカテゴリIDを取得するにはどうすればいいですか?

get category idsingle.phpを入れる必要があります。私はこれを試しました:
$cat_ID = get_query_var('cat');

うまくいきませんでした。代わりに何を使うべきですか?

1
Sam Hanson

Wp_get_post_categories()を使用してください。

投稿のカテゴリのリストを取得します。

<?php wp_get_post_categories( $post_id, $args ) ?>

投稿にカテゴリが1つしかない場合でも、この関数は(カテゴリIDの)配列を返すことに注意してください。

以下の例は、カテゴリがどのように取得され、その後各カテゴリの追加情報が取得されるかを示しています。

$post_categories = wp_get_post_categories( $post_id );
$cats = array();

foreach($post_categories as $c){
    $cat = get_category( $c );
    $cats[] = array( 'name' => $cat->name, 'slug' => $cat->slug );
}

参照: http://codex.wordpress.org/Function_Reference/wp_get_post_categories

別のオプション:

Get_the_terms()を使用してください。

<?php
    $id = get_the_id();
    $terms = get_the_terms( $id, 'category' );
    // print_r( $terms );
    foreach($terms as $term) {
        echo $term->cat_ID;   
    }
?>
3
gurudeb

あなたは単に使うことができます

$categories = get_the_category();

割り当てられたカテゴリを取得します。

1
fischi