web-dev-qa-db-fra.com

Afficher tous les commentaires ou les commentaires récents par utilisateur sur la page de l'auteur

J'ai des pages d'auteur pour chaque auteur et je veux voir tous ses commentaires (ou tous ses commentaires récents) si je clique sur son pseudo. Comment puis-je faire ceci? J'ai essayé le code ci-dessous, mais cela ne montre pas les commentaires uniques par utilisateur ... Il sort tous les commentaires récents de tout le monde, mais je ne le veux pas.

<?php
$author_email = get_the_author_meta( 'user_email' );
$args = array(
    'author_email' => $author_email,
    'number' => '10'
);
$comments = get_comments($args);
foreach($comments as $comment) :
    echo('<li class="comment">' . $somment->comment_content),'<h5><a href='.get_permalink($comment->comment_post_ID).'>', get_the_title($comment->comment_post_ID), '</a></h5>', '<time><em>' . $comment->get_comment_date . '</em></time>', '</li>';
endforeach;

?>

</ul></div>
2
user1627363

votre problème utilise author_email, vous avez besoin de user_id :

je viens d'utiliser un script similaire.

<?php
    $args = array(
        'user_id' => get_the_author_meta('ID'),
        'number' => 10, // how many comments to retrieve
        'status' => 'approve'
        );

    $comments = get_comments( $args );

    if ( $comments )
    {
        $output.= "<ul>\n";
        foreach ( $comments as $c )
        {
        $output.= '<li>';
        $output.= '<a href="'.get_comment_link( $c->comment_ID ).'">';
        $output.= get_the_title($c->comment_post_ID);
        $output.= '</a>, Posted on: '. mysql2date('m/d/Y', $c->comment_date, $translate);
        $output.= "</li>\n";
        }
        $output.= '</ul>';

        echo $output;
    } else { echo "No comments made";}

?>

5
Andy
0
0_0