<div id="resume-skills"> <?php $args = array( 'order' => 'DESC', 'post_type' => 'sv_jobs', ); $resume_jobs = new WP_Query(); $resume_jobs->query( $args ); $args = array( 'taxonomy' => 'category', ); //$skills = get_terms( 'sv_respons', array( 'hide_empty' => true, 'parent' => '2' ) ); $skill_parents = get_terms( 'sv_respons', array( 'hide_empty' => true, 'parent' => '0' ) ); //var_dump( $skill_parents ); //var_dump( $skills ); foreach ( $skill_parents as $skill_parent ) { ?> <ul id="skills-list"> <li> <h3><?php echo $skill_parent->name; ?></h3> <?php $child_skills = get_term_children( $skill_parent->term_id, 'sv_respons' ); echo '<ul>'; foreach( $child_skills as $child_skill ) { echo '<li>'; // This needs lots of work // loop through all the posts while ( $resume_jobs->have_posts() ) : $resume_jobs->the_post(); $sv_job_meta = get_post_custom( $post->ID ); $jobs_terms = wp_get_object_terms( $post->ID, 'sv_respons' ); $job_term_ids = array(); foreach ( $jobs_terms as $job_term ) { $job_term_ids[] = $job_term->term_id; } if ( in_array( $child_skill, $job_term_ids ) ) { ?> <span class="job-color" style="background-color: #<?php echo $sv_job_meta['sv_job_color'][0]; ?>"></span> <?php } endwhile; $skill = get_term_by( 'id', $child_skill, 'sv_respons' ); echo $skill->name; if ( ! empty( $skill->description ) ) { echo '<div class="skill-description">' . $skill->description . '</div>'; } echo '</li>'; } echo '</ul>'; ?> </li> </ul> <?php } ?> </div>