Como criar um grupo de Posts por autor

Agrupamento de artigos em critérios específicos, como categoria, data ou alfabeto, sempre pode ajudar os visitantes a encontrar rapidamente um ou dois posts. No tutorial anterior, ensinamos a ordenar os posts por ordem alfabética. Desta vez, vou partilhar o código para o agrupar postagens por autor.

sobre, como, autor

Este código irá listar post por autores, seu ID, seus posts e seu gravatar, mais ou menos assim:

Autor ID1, Leonardo Rodrigues:
[Gravatar]
Post 1
Post 2
etc etc

Autor ID2, Gustavo Freitas:
[Gravatar]
Post 1
Post 2
etc etc

etc etc

E aqui está o código:

 
<?php
$blogusers = $wpdb->get_results( "SELECT ID, user_nicename from $wpdb->users WHERE 1=1 ORDER BY display_name" );
if ($blogusers) {
  foreach ($blogusers as $bloguser) {
    $user = get_userdata($bloguser->ID);
    $args=array(
      'author' => $user->ID,
      'post_type' => 'post',
      'post_status' => 'publish',
      'posts_per_page' => -1,
      'caller_get_posts'=> 1
    );
    $my_query = null;
    $my_query = new WP_Query($args);
    if( $my_query->have_posts() ) {
      echo '<p>User ID ' . $user->ID . ' ' . $user->user_firstname . ' ' . $user->user_lastname . '</p>';
      echo get_avatar( $user->ID, 46 );
      while ($my_query->have_posts()) : $my_query->the_post(); ?>
        <p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p>
        <?php
      endwhile;
    }
  wp_reset_query();
  }
}
?>

Você pode colocar esse código na barra lateral ou onde quer que você ache interessante ou em um modelo de página para criar um mapa do site.

Espero que este código seja de grande ajuda.

Crédito:

Rate this post

Quer aprender a ganhar dinheiro com Google Adsense em blogs?

Leonardo Rodrigues

Apaixonado por internet e curioso por SEO sempre está envolvido em algum projeto web. Você me encontra também no blog Negocio Seo e vê meus Projetos e Redes Sociais no AboutMe

Website: http://querocriarumblog.com.br

Deixe uma resposta