Categorías de enlace al último mensaje

Estoy usando wp_list_categories() para mostrar todas las categorías. Pero me gustaría que las categorías infantil enlace al último puesto de esa categoría. Por ejemplo:
 <ul>
   <li><a rel="nofollow" href="link-to-category-1">CATEGORY 1</a> 
       <ul>
           <li><a rel="nofollow" href="link-to-last-post-of-category-1-1">CATEGORY 1.1</a></li>
      </ul>
  </li>
</ul>
¿Cómo puedo hacerlo?.



Solución

Esto podría hacerse con una clase de walker ne
class Childcat2LastPost extends Walker_Category
{
    function start_el( &$output, $category, $depth = 0, $args = array(), $id = 0 ) {

        if ( 0 != $category->category_parent ) {

            $args = array(
                    'cat'            => $category->term_id,
                    'orderby'        => 'post_date',
                    'order'          => 'DESC',
                    'post_type'      => 'post',
                    'post_status'    => 'publish',
                    'post__not_in'   => get_option( 'sticky_posts' ), // do not display sticky posts
            );

            $query        = new WP_Query( $args );
            $recent_posts = $query->get_posts();
            $last         = sizeof( $recent_posts ) -1;
            $last_post    = $recent_posts[$last];
            $permlink     = get_permalink( $last_post->ID );
            $title        = $last_post->post_title;

            if ( ! empty( $permlink ) ) {
                $output .= sprintf( '<li><a rel="nofollow" href="%s">%s</a></li>', esc_attr( $permlink ), esc_html( $title ) );
            }

        } else {

            parent::start_el( $output, $category, $depth, $args, $id );

        }

    }
}
Tienes que pasar la clase como argumento para
wp_list_categories
$cat2post = new Childcat2LastPost();

$args = array(
    'walker' => $cat2post
);

echo '<ol>';
wp_list_categories( $args );
echo '</ol>';
Comente la línea
'post__not_in'
Si desea incluir mensajes pegajosos. Ajustar el código HTML en la línea con
$output .= sprintf( '<li><a rel="nofollow" href="%s">%s</a></li>', esc_attr( $permlink ), esc_html( $title ) );
(añadir un
alt
o
title
atributo, una clase etc.)..




Problemas relacionados

obtener enlace del último post con consulta SQL

Vincular cada categoría último mensaje

¿Combinando el post categorías y categorías de enlace?

¿Cuántos días desde el último mensaje del usuario actual

¿Existe una API para crear categorías de enlace mediante programación?

¿Cómo obtener el rastro de migas de pan de get_category_parents() sin enlace sobre el tema del último

Último artículo Widget con vista previa de texto y el botón más

Cómo hacer el enlace 'más' punto al post en lugar de la lista

Sólo la lista categorías que contienen un tipo de mensaje personalizado

¿get_category_link() para el tipo de mensaje personalizado no incluye reescritura slug personalizado?

Extraiga el soporte para 'Categorías' para un tipo de mensaje personalizado

¿Cómo relacionar un tipo de mensaje personalizado a otro tipo de correos personalizados

Source: Stack Exchange Inc; License: cc by-sa 3.0 Contacto / Contact