J'ai besoin de get category id
dans single.php
. J'ai essayé ceci:$cat_ID = get_query_var('cat');
Ça n'a pas marché. Que devrais-je utiliser à la place?
Utilisez wp_get_post_categories ()
Récupérez la liste des catégories pour un post.
<?php wp_get_post_categories( $post_id, $args ) ?>
Sachez que la fonction renvoie un tableau (avec les identifiants de catégorie) même si vous n’avez qu’une catégorie dans votre message.
L'exemple ci-dessous montre comment les catégories sont récupérées, puis des informations supplémentaires sont extraites pour chaque catégorie.
$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 );
}
Référence: http://codex.wordpress.org/Function_Reference/wp_get_post_categories
Utilisez 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;
}
?>
Vous pouvez simplement utiliser
$categories = get_the_category();
pour obtenir les catégories assignées.