[resolved] Additional Help with Spreading Custom Query Loop over Multiple Div Classes (2 posts)

  1. Erik Ford
    Posted 5 years ago #

    A few weeks ago, I received some much needed help regarding spreading a custom loop, based on comment count, over a series of div classes. The original post is here: http://wordpress.org/support/topic/spread-loop-results-over-a-series-of-container-classes

    In essence, the custom query retrieves data from $wpdb and returns wraps every 4 results in its own container class to be used with a jQuery sliding carousel.

    I thought I may be smart enough to reuse the code snippet and change the parameters to return results based on category id but I am getting nowhere. Here is what I came up with:

    <?php $result = $wpdb->get_results("
    	SELECT comment_count,ID,post_title,post_date
    	FROM $wpdb->posts wposts
            WHERE wposts.ID = wpostmeta.post_id
                 AND wposts.post_status = 'publish'
                 AND wposts.post_type = 'post'
                 AND $wpdb->term_taxonomy.taxonomy = 'category'
    	     AND $wpdb->term_taxonomy.term_id IN(5)
    	ORDER BY wposts.post_date DESC
    	LIMIT 12");
    	foreach ($result as $post) {
       	$postid = $post->ID;
       	$title = $post->post_title;
       	$commentcount = $post->comment_count;
            $date = $post->post_date;
          	if (++$post_counter % 4 == 1) {
             	if ($post_counter > 1) {
                	echo "</div><!-- End of slides -->\n";  // End previous grp
           		echo "<div class='trending-slides'>\n";  // Start a new grp
    <!-- What is returned in from the query -->
    <?php } ?><!-- Closing counter if statement -->
    <?php } ?><!-- Closing custom foreach loop -->
    </div><!-- End of slides -->

    I was hoping that this would return 12 posts from the category with an ID of 5 which would be grouped into 4 posts for each "trending-slides" class. The results should look like this

    <div class="trending-slides>
    <!-- 4 results -->
    </div><!-- End of slides -->
    <div class="trending-slides>
    <!-- 4 results -->
    </div><!-- End of slides -->
    <div class="trending-slides>
    <!-- 4 results -->
    </div><!-- End of slides -->

    Can anyone point me where I am making the mistake? With my concoction, I get no results and a closing </div> tag only for the End of slides. Any help is greatly appreciated.

  2. Erik Ford
    Posted 5 years ago #

    I was completely over thinking this one and found a solution with the get_post method.

Topic Closed

This topic has been closed to new replies.

About this Topic