I would like to display custom posts in template, they have to be ordered by most commented and without duplicates on the same page. This is the code that I have for now.
$args = array(
'post_type' => 'portfolio',
'status' => 'approve',
'post_status' => 'publish',
'number' => 28,
'order' => 'ASC',
'orderby' => 'comment_count',
);
$comments = get_comments($args);
if ($comments) {
foreach ($comments as $comment) : ;
$post_args = array(
'post_type' => 'portfolio',
'posts_per_page' => 1,
);
$posts = get_posts($post_args);
foreach ($posts as $post) : setup_postdata($post);
$title = get_the_title($comment->comment_post_ID);
?>
<div class="col-md-3 col-sm-6 col-xs-12">
<h4><?php echo $title; ?></h4>
</div>
<?php
endforeach;
endforeach;
}
?>
<?php wp_reset_query(); ?>