无法设置Wordpress wp_list_categories的样式

时间:2015-08-21 21:06:38

标签: css wordpress wp-list-categories

我在使用Style显示wp_list_categories时遇到问题。我已经在使用args等,但这似乎没有帮助解决这个问题。

我想为单篇文章显示相同的子类别。

这是我的代码:

<?php
if (is_home()) {
    wp_list_categories('orderby=id&title_li=none&depth=1');
} else {
    $category = get_the_category();
    $cat_term_id = $category[0]->term_id;
    $cat_category_parent = $category[0]->category_parent;
    $listcat = wp_list_categories('echo=0&child_of='.$cat_category_parent.'&title_li=');
    $listcat = str_replace("cat-item-".$cat_term_id, "cat-item-".$cat_term_id." current-cat", $listcat);
  if ( in_category( $cat_term_id ) || post_is_in_descendant_category( $cat_term_id )) {
      echo $listcat;
  }
}
?>
</ul>

以下是结果:

http://i.stack.imgur.com/buYyl.jpg

我希望结果如下:

http://i.stack.imgur.com/U3Pc6.jpg

1 个答案:

答案 0 :(得分:1)

我认为这可能适合您,但我不确定您在上面引用了哪个主题文件。

<?php $parent_cat_id = 1; // Change this ID to match the ID value of the "Sepeda" category ?>
<?php $categories = get_categories( "child_of=$parent_cat_id" ); ?> 

<?php if ($categories) : ?>
    <ul id="category-list">
        <?php // Print the link for 'Sepeda' ?>
        <?php echo "<li class='category-name'><a href='" . get_category_link($parent_cat_id) . "'>" . get_cat_name($parent_cat_id) . "</a></li>"; ?>

        <?php // Loop through the sub-categories of 'Sepeda' and print the names and links ?>
        <?php foreach ($categories as $cat) { 
            echo "<li class='category-name'><a href='" . get_category_link( $cat->term_id ) . "'>" . $cat->name . "</a></li>";
        } ?>

        <?php wp_reset_query();  // Restore global post data  ?> 
    </ul>
<?php endif; ?>

然后你可以使用这个CSS来适当地设置类别列表的样式:

#category-list {
    width: 250px;
    padding: 5px;
    background: white;
    list-style: none;
}
.category-name {
    background-color: #694489;
    color: white;
    min-height: 40px;
    text-align: center;
    line-height: normal;
    padding-top: 10px;
}
.category-name + .category-name {
    margin-top: 10px;
}