Style wp_list_categories

时间:2013-11-28 作者:user2960468

我认为这是一个相当简单的问题,如果是,我很抱歉,但我如何添加<div> 此代码中的每个单独类别:

    <?php
$taxonomy = \'category\';
// get the term IDs assigned to post.
$post_terms = wp_get_object_terms( $post->ID, $taxonomy, array( \'fields\' => \'ids\' ) );
// separator between links
$separator = \',\';

if ( !empty( $post_terms ) && !is_wp_error( $post_terms ) ) {

    $term_ids = implode( \',\' , $post_terms );
    $terms = wp_list_categories( \'title_li=&style=none&echo=0&taxonomy=\' . $taxonomy . \'&include=\' . $term_ids );
    $terms = rtrim( trim( str_replace( \'<br />\',  $separator, $terms ) ), $separator );

    // display post categories
    echo  $terms;
}   
?>
我想添加<div class="btn-standard"> 到每个类别。请注意,我只想显示与帖子相关的类别。

2 个回复
最合适的回答,由SO网友:Pepe 整理而成

我的建议。

$categories = get_the_category();
$output = \'\';
if($categories) {
    $output = "<ul>";
    foreach($categories as $category) {
        $output .= \'<li><div class="btn-standard"><a href="\'.get_category_link( $category->term_id ).\'" title="\' . esc_attr( sprintf( __( "View all posts in %s" ), $category->name ) ) . \'">\'.$category->cat_name.\'</a></div></li>\';
    }
    $output .= "</ul>";
}
echo $output;
您可以检查Codex 以供更多参考。

SO网友:Ryan S

改用这种方法

 $terms = get_terms( $taxonomy );
 $count = count($terms);
 if ( $count > 0 ){
     echo "<ul>";
     foreach ( $terms as $term ) {
        echo "<li><div>" . $term->name . "</div></li>";
     }
     echo "</ul>";
 }

结束

相关推荐

如何编写Get_Categories_by_Year()函数?

我需要写信a function to get all the categories for a given year. 由于分类法的创建日期没有存储在数据库中,我真的不知道该怎么做。我最初的想法是获取给定年份的所有帖子,并以某种方式找到与这些帖子相关的所有类别,但我不知道如何做到这一点,这听起来非常缓慢。也许我可以写一些SQL,但我对PHP更为精通。再次回到函数,我想它应该是这样的:function get_categories_by_year($year) { // Do stuff...&#