2013-06-25 10 views
5

Czy można uzyskać nazwę kategorii kategorii z identyfikatorem Post, poniższy kod działa, aby uzyskać identyfikator kategorii, ale jak mogę uzyskać nazwę?Uzyskaj nazwę kategorii od Post ID

<?php $post_categories = wp_get_post_categories(4); echo $post_categories[0]?> 

Dziękujemy!

Odpowiedz

16

tutaj idziesz get_the_category($post->ID); zwróci tablicę kategoriach tego postu trzeba pętli tablicy

$category_detail=get_the_category('4');//$post->ID 
foreach($category_detail as $cd){ 
echo $cd->cat_name; 
} 

get_the_category

+0

dzięki, ale gdzie mam zdefiniować post ID w tym kodzie, że chcę nazwę kategorii. – user1937021

+0

zobacz moją zredagowaną odpowiedź –

+0

Nie podoba mi się, jak trzeba przejrzeć tablicę, aby uzyskać nazwę, ale działa. – Radmation

0

Użyj funkcji get_the_category().

$post_categories = wp_get_post_categories(4); 
$categories = get_the_category($post_categories[0]); 
var_dump($categories); 
+0

fajne, ale jak mam powtórzyć wynik? – user1937021

+0

@ user1937021 Czy sprawdziłeś wynik? – swapnesh

+0

yes @swapnesh dane wyjściowe daje mi tę tablicę (0) {} – user1937021

5

nie

<?php get_the_category($id) ?> 

zrobić właśnie to, w pętli?

Na zewnątrz:

<?php 
global $post; 
$categories = get_the_category($post->ID); 
var_dump($categories); 
?> 
+0

To zwraca mi tablicę - nie nazwę kategorii – Radmation

1
function wp_get_post_categories($post_id = 0, $args = array()) 
{ 
    $post_id = (int) $post_id; 
    $defaults = array('fields' => 'ids'); 
    $args = wp_parse_args($args, $defaults); 
    $cats = wp_get_object_terms($post_id, 'category', $args); 

    return $cats; 
} 

Oto drugi argument funkcji wp_get_post_categories() które można przekazać atrybuty odbierania danych.

$category_detail = get_the_category('4',array('fields' => 'names')); //$post->ID 
foreach($category_detail as $cd) 
{ 
    echo $cd->name; 
} 
8
echo '<p>'. get_the_category($id)[0]->name .'</p>'; 

jest to, co może szukasz.

+0

DZIĘKI !! Dokładnie to, czego potrzebowałem - bez pętli - znacznie ładniejsza – Radmation

+0

Dzięki ... Zwraca nazwę kategorii postów, na której jesteśmy – TusharG

+0

jest naprawdę dobra, jeśli nie ma potrzeby korzystania z pętli, np. w szablonie pojedynczego wpisu. Miły. – Marek

0
 <?php 
    // in woocommerce.php 
    $cat = get_queried_object(); 
    $cat->term_id; 
    $cat->name; 
    ?> 

    <?php 
    // get product cat image 
     if (is_product_category()){ 
      $cat = get_queried_object(); 
      $thumbnail_id = get_woocommerce_term_meta($cat->term_id, 'thumbnail_id', true); 
      $image = wp_get_attachment_url($thumbnail_id); 
      if ($image) { 
       echo '<img src="' . $image . '" alt="" />'; 
      }  
} 
?>