WP_Query: Posts
The most default WP_query there is!
// WP_Query arguments $args = array( 'post_type' => array( 'post' ), 'post_status' => array( 'publish' ), 'nopaging' => true, 'posts_per_page' => '4', 'ignore_sticky_posts' => false, 'order' => 'DESC', 'orderby' => 'date', ); // The Query $posts_query = new WP_Query( $args ); // The Loop if ( $posts_query->have_posts() ) { while ( $posts_query->have_posts() ) { $posts_query->the_post(); // do something } } else { // no posts found } // Restore original Post Data wp_reset_postdata();