I need to get posts done by specific users and get also comments done to these posts, so far I can get the posts and comments but can’t get how to do it in loop properly, because now I get the same comments displayed for each post no matter to which posts they actually belong to…
So here is the code…loop inside another one, I am now quite sure that is the way it should…
So the output in my case: list of posts + each posts get ALL the comments which have ever been done…
I want to get post + only its comments in a loop
(I will put only php)
<?php $posts = get_recent_posts_by_author_role('tenant');
foreach($posts as $post) {
$title=$post->post_title;
$perma_link=get_permalink($post->ID);
$img_post=get_the_post_thumbnail($post->ID);
$author_name=$post->post_author;
$content_post=$post->post_content;
$date=$post->post_date;
$content_style="comment_text";
?>
<?php $comment=get_comments($post->ID);
foreach($comment as $com){
$com_author=$com->comment_author;
$com_date=$com->comment_date;
$com_content=$com->comment_content;
global $authordata;
$author_roles=$authordata->roles;
?>
<?php }?>
<?php }?>
get_comments
accepts an array of arguments, you are passing an integer.If you want to retrieve all comments for a post use:
To get an already formatted comment list, is easier use the
wp_list_comments()
function, instead of another foreach cycle (code from codex):get_comments accepts an array of arguments, you are passing an integer.
If you want to retrieve all comments for a post use: