Модификация wp_list_categories

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

class CategoryThumbnail_Walker extends Walker_Category { // A new element has been stumbled upon and has ended function end_el( &$output, $category, $depth, $args ) { // Output the standard link ending parent::end_el( &$output, $category, $depth, $args ); // Get one post $posts = get_posts( array( // ...from this category 'category' => $category->cat_ID, 'numberposts' => 1 ) ); // If a post has been found if ( isset($posts[0]) ) { // Get its thumbnail and append it to the output $featured = get_the_post_thumbnail( $posts[0]->ID, 'extrathumb', null ); $output .= $featured; } } } 

Используется таким образом: –

 <?php wp_list_categories( array( 'show_count' => 1, 'walker' => new CategoryThumbnail_Walker()) ); ?> 

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

Единственная проблема заключается в том, что он выводит img OUTSIDE li, например

 <li class="cat-item cat-item-38"><a href="http://192.168.1.141:8888/category/around-the-web/" title="View all posts filed under Around The Web">Around The Web</a> <span class="post_count"> 1 </span> </li> <img width="79" height="79" src="http://img.wordpressask.com/categories/thanksgiving-day-parade-wind-79x79.jpg" class="attachment-extrathumb wp-post-image" alt="A lot could go awry."> 

Мне нужно, чтобы этот образ был ВНУТРИ категории li

Есть идеи?

Переместите то, что вы называете «завершение стандартной ссылки» до конца функции, а не начало.

 class CategoryThumbnail_Walker extends Walker_Category { // A new element has been stumbled upon and has ended function end_el( $output, $category, $depth, $args ) { // Get one post $posts = get_posts( array( // ...from this category 'category' => $category->cat_ID, 'numberposts' => 1 ) ); // If a post has been found if ( isset($posts[0]) ) { // Get its thumbnail and append it to the output $featured = get_the_post_thumbnail( $posts[0]->ID, 'extrathumb', null ); $output .= $featured; } // Output the standard link ending parent::end_el( $output, $category, $depth, $args ); } } wp_list_categories( array( 'show_count' => 1, 'walker' => new CategoryThumbnail_Walker() ) ); 

Я считаю, что «гнезда» правильно (я не очень тщательно его анализировал), но я уверен, что у вас будет более аккуратный вывод, изменив метод start_el вместо end_el .