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>
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";}
?>