You may want to list all categories with posts in WordPress. It’ll help your users to easily find out the post they’re looking for.
Instructions: Add the following code to the functions.php file of your WordPress theme.
<?php //for each category, show all posts $cat_args=array( 'orderby' => 'name', 'order' => 'ASC' ); $categories=get_categories($cat_args); foreach($categories as $category) { $args=array( 'showposts' => -1, 'category__in' => array($category->term_id), 'caller_get_posts'=>1 ); $posts=get_posts($args); if ($posts) { echo '<p>Category: <a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </p> '; foreach($posts as $post) { setup_postdata($post); ?> <p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p> <?php } // foreach($posts } // if ($posts } // foreach($categories ?>
You may also enjoy removing default taxonomies in WordPress.
Hi, this is very helpful how possible is to get the number of posts fro each parent category?
this is great, but what if i need pagination?
I use this code snippet but I had to add global $post variable. It duplicate some posts if global $post variable is not present.
BTW. Thank you!