web-dev-qa-db-fra.com

Plus de messages de l'auteur actuel

Sur un blog WordPress multi-auteurs, je dois afficher une liste contenant plus de messages de l'auteur actuel. La liste est dans la boucle, je peux donc utiliser <?php the_author_meta('first_name'); ?> <?php the_author_meta('last_name'); ?> et <?php the_author_meta('description'); ?>, mais comment récupérer les publications de l'utilisateur?

2
Dimitar

Cela récupérera les publications de l'auteur actuel lorsqu'il sera utilisé dans la boucle.

Mettez ce qui suit dans votre theme functions.php:

function my_get_display_author_posts() {
    global $authordata, $post;

    $authors_posts = get_posts( array( 'author' => $authordata->ID, 'post__not_in' => array( $post->ID ) ) );

    $output = '<ul>';
    foreach ( $authors_posts as $authors_post ) {
        $output .= '<li><a href="' . get_permalink( $authors_post->ID ) . '">' . apply_filters( 'the_title', $authors_post->post_title, $authors_post->ID ) . '</a></li>';
    }
    $output .= '</ul>';

    return $output;
}

Et ajoutez echo my_get_display_author_posts(); dans votre fichier de modèle, dans la boucle où vous souhaitez afficher les publications.

3
sorich87

Je pense que vous pouvez utiliser la fonction wordpress query_posts pour cela. Jetez un coup d’œil à http://codex.wordpress.org/Function_Reference/query_posts . Cela pourrait ne pas suffire pour faire ce dont vous avez besoin, mais vous devriez commencer à regarder autour de la référence de la fonction.

0
benstraw

Utilisez get_posts() with Author Parameters (ils sont dans la documentation query_posts(), mais ces deux fonctions prennent généralement les mêmes arguments).

N'utilisez pas query_posts() pour cela, c'est pour modifier la boucle de la page principale.

0
Rarst