列出当前职位/当前类别中的分类术语

时间:2014-01-24 作者:Mahmud Hasan

我需要在自定义帖子以及该帖子类型的归档/类别页面中显示分类术语。术语必须来自当前职位或当前类别https://stackoverflow.com/questions/15502811/display-current-post-custom-taxonomy-in-wordpress此线程中的代码仅适用于单个帖子,我是否可以使其在存档/分类页面中也起作用。

1 个回复
SO网友:birgire

您可以尝试以下操作:

/**
 * List the taxonomies and terms for a given post
 * 
 * @param int $post_id
 * @return string
 */
function get_the_current_tax_terms_wpse( $post_id )
{
    // get taxonomies for the current post type
    $taxonomies = get_object_taxonomies( get_post_type( $post_id ) );

    $html = "";
    foreach ( (array) $taxonomies as $taxonomy) 
    {        
        // get the terms related to the post
        $terms = get_the_terms( $post->ID, $taxonomy );
        if ( !empty( $terms ) )
        {
            $li = \'\';        
            foreach ( $terms as $term )
                $li .= sprintf( \'<li><a href="%s">%s</a></li>\', 
                                 get_term_link( $term->slug, $taxonomy ),
                                 $term->name );

             if( ! empty ( $li ) )
                 $html .= sprintf( \'<li><ul><li>%s:</li>%s</ul></li>\', 
                                    $taxonomy, 
                                    $li );
        }
    }
    return sprintf( \'<ul>%s</ul>\', $html );
}
您可以通过以下方式进行调用:

echo get_the_current_tax_terms_wpse( get_the_ID() );
从模板中。

结束