0

我在我的 WordPress 网站中创建了一个自定义帖子类型。我在该自定义帖子类型中添加了许多帖子。

我想显示分配给该自定义帖子类型中每个帖子的所有类别。请帮我。谢谢...

4

4 回答 4

2

你可以试试:

$terms = get_the_terms($post->ID, 'your_taxonomy_name');

http://codex.wordpress.org/Function_Reference/get_the_terms

但您必须先为您的 CPT 设置分类:

http://codex.wordpress.org/Function_Reference/register_taxonomy

于 2013-05-10T15:10:34.553 回答
1

你可以试试下面的代码

foreach ( get_posts( 'numberposts=-1') as $post ) {

            wp_set_object_terms($post_id, 'category_name', 'category');
    }
于 2013-05-10T13:45:09.967 回答
1

使用 Wordpress 功能:

has_term:http ://codex.wordpress.org/Function_Reference/has_term

和 get_the_terms:http ://codex.wordpress.org/Function_Reference/get_the_terms

使用 has_term() 很重要,因此您不会在不使用自定义分类法的帖子上出现错误。

get_the_terms() 获取当前帖子 ID 的所有术语,在循环中使用它。


例子:

<ul class="post-entry-meta">

<?php if( has_term('','your taxonomy' ))

{

$terms = get_the_terms( $post->ID , 'your taxonomy' ); 

foreach ( $terms as $term )

{echo '<li class="taxonomy-list">', $term->name , '</li>' ;}

}?> 

</ul>
于 2013-10-04T17:59:46.237 回答
1
<?php
$custom_post_taxonomies = get_object_taxonomies('your_taxonomy_name');

if(count($custom_post_taxonomies) > 0)
{
 foreach($customPostTaxonomies as $tax)
 {
     $args = array(
          'orderby' => 'name',
          'show_count' => 0,
          'pad_counts' => 0,
          'hierarchical' => 0,
          'taxonomy' => $tax,
          'title_li' => ''
        );

     wp_list_categories( $args );
 }
}
?>

请用您的分类名称替换“your_taxonomy_name”。它运作良好。

于 2014-07-08T13:27:56.977 回答