WordPress get_categories и перечисление недавнего миниатюры сообщения

Я пытаюсь получить страницу, чтобы перечислить все дочерние категории, а затем отобразить их имя и миниатюру с последнего сообщения в этой категории.

Это следующий код, который у меня есть, он, похоже, извлекает несколько эскизов из других сообщений, которые не относятся к категории, а также повторяют категории.

Любая помощь будет очень оценена.

<?php get_header(); ?> <div id="left_full"> <?php $args = array( 'orderby' => 'name', 'order' => 'ASC', 'child_of' => '3592' ); $categories = get_categories($args); foreach($categories as $category) { query_posts( $category->name . 'posts_per_page=1' ); while ( have_posts() ) : the_post(); echo '<div class="interview_item">'; echo '<div class="interview_thumb"><a href="#" rel="bookmark">'; the_post_thumbnail('interview-thumb'); echo '</a></div>'; echo '<h1><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </h1> '; echo '</div>'; endwhile; wp_reset_query(); } ?> </div> </div> <?php get_footer(); ?> 

Solutions Collecting From Web of "WordPress get_categories и перечисление недавнего миниатюры сообщения"

Некоторое развлечение, удалось заставить его работать.

  <?php /* Template Name: Festivals - United States */ ?> <?php get_header(); ?> <div id="left_full"> <?php $args = array( 'orderby' => 'name', 'order' => 'ASC', 'child_of' => '3592' ); $temp_query = $wp_query; $categories = get_categories($args); foreach($categories as $category) { query_posts("posts_per_page=1&cat=$category->cat_ID"); if (have_posts()) : while (have_posts()) : the_post(); echo '<div class="interview_item">'; echo '<div class="interview_thumb"><a href="#" rel="bookmark">'; the_post_thumbnail('interview-thumb'); echo '</a></div>'; echo '<h1><a href="' . get_category_link( $category->term_id ) . '" title="' . sprintf( __( "View all posts in %s" ), $category->name ) . '" ' . '>' . $category->name.'</a> </h1> '; echo '</div>'; endwhile; endif; } $wp_query = $temp_query; ?> </div> </div> <?php get_footer(); ?>