Post Type Taxonomy Loop WordPress

<?php
// Get all the categories
$categories = get_terms( 'service-category' );

// Loop through all the returned terms
foreach ( $categories as $category ):

 // set up a new query for each category, pulling in related posts.
 $services = new WP_Query(
 array(
 'post_type' => 'services',
 'showposts' => -1,
 'tax_query' => array(
 array(
 'taxonomy' => 'service-category',
 'terms' => array( $category->slug ),
 'field' => 'slug'
 )
 )
 )
 );
?>

<h3><?php echo $category->name; ?></h3>
<ul>
<?php while ($services->have_posts()) : $services->the_post(); ?>
 <li><?php the_title(); ?></li>
<?php endwhile; ?>
</ul>

<?php
 // Reset things, for good measure
 $services = null;
 wp_reset_postdata();

// end the loop
endforeach;
?>

Leave a Comment