2013-06-25 5 views
5

Возможно ли получить название категории категории с учетом идентификатора Post, следующий код работает, чтобы получить идентификатор категории, но как я могу получить имя?Получить название категории из почтового индекса

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

Thank!

ответ

16

здесь вы идете get_the_category($post->ID); возвращает массив категорий этого поста вам нужно перебрать массив

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

get_the_category

+0

спасибо, но где я могу определить идентификатор сообщения в этом коде, чтобы я хотел назвать название категории. – user1937021

+0

см. Мой отредактированный ответ –

+0

Мне не нравится, как вам нужно перебирать массив, чтобы получить имя, но оно работает. – Radmation

0

Использование get_the_category() функция.

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

классный, но как я эхо исхода? – user1937021

+0

@ user1937021 Вы проверили выход? – swapnesh

+0

да @swapnesh вывод дает мне этот массив (0) {} – user1937021

5

не

<?php get_the_category($id) ?> 

сделать просто, что внутри цикла?

Для снаружи:

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

Это возвращает массив для меня - не название категории – 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; 
} 

Вот второй аргумент функции wp_get_post_categories() , которые вы можете передать атрибуты приема данных.

$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>'; 

является то, что вы, возможно, ищете.

+0

СПАСИБО !! Именно то, что мне было нужно - никаких циклов - намного прелестно – Radmation

+0

Спасибо ... Он возвращает название категории должности, на котором сообщение – TusharG

+0

действительно хорошее, если нет необходимости использовать цикл, например. в одном шаблоне. Ницца. – 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="" />'; 
      }  
} 
?>