Forum Replies Created

Viewing 1 replies (of 1 total)
  • I just finished creating a tutorial on how to add different types of columns in a WordPress template. The first example from my tutorial sounds exactly like what you need.

    <?php
        // Custom loop that adds a clearing class to the first item in each row
        $args = array('numberposts' => -1, 'order' => 'ASC' ); //For this example I am setting the arguments to return all posts in reverse chronological order. Odds are this will be a different query for your project
        $allposts = get_posts($args);
        $numCol = 2; // Set number of columns
     
        // Start Counter
        $counter = 0;
        foreach ($allposts as $post) {
            $content = '<div class="columns-'.$numCol.($counter % $numCol == 0 ? ' first' : '').'">'; // Add class to first column
            $content .= '<h3><a href="'.$post->guid.'">'.$post->post_title.'</a></h3>';
            $content .= $post->post_content;
            $content .= '</div>';
            echo $content;
            $counter ++;
        }
    ?>
     
    <style type="text/css">
        /* Added styles here for the demo, but ideally you would put this in a stylesheet.*/
        .columns-2 {
            float:left;
            width:45%;
            margin-left:10%;
        }
        .first {
            clear:both;
            margin-left:0;
        }
    </style>

    The above code uses the modulus operator like @alchymyth suggests in order to add a “clearing” class every X posts in a loop. CSS is then used to float the posts into columns and clear at the beginning of each row.

    Feel free to check out the full tutorial here: http://heinencreative.com/tutorials/adding-columns-to-a-wordpress-template

Viewing 1 replies (of 1 total)