Merhaba,

    <?php
    if (is_category()) {
    $this_category = get_category($cat);
    }
    ?>
    <?php
    if($this_category->category_parent)
    $this_category = wp_list_categories('orderby=id&show_count=0&
    &title_li=&use_desc_for_title=0&hide_empty=0&child_of='.$this_category->category_parent.
    "&echo=0"); else
    $this_category = wp_list_categories('orderby=id&show_count=0&
    &title_li=&use_desc_for_title=0&hide_empty=0&child_of='.$this_category->cat_ID.
    "&echo=0");
    if ($this_category) { ?> 

<ul>
<?php echo $this_category; ?>

</ul>
Bu kod ile alt kategorilerinde yazı olsun veya olmasın her ihtimalde ana kategoriye bağlı tüm alt kategorileri listelemiş olursun. Def olarak hide_empty=1'dir. Bu değeri 0 yaptığımızda yazı olmayanları da listelemiş oluyorsun, böylece daha düzenli bir duruşu oluyor.