Limit the number of posts in query_posts function with custom post types

I am using the code below to display posts defined as a custom-post-type and filtered by a custom-taxonomy of ‘england’.

I’ve tried using ‘posts_per_page=5’ in the query_posts function but this brings up a completely different set of posts from one of my post categories of type ‘news’. When I remove the posts-per-page from the query, it returns the listings I want but it defaults to the default 10 set within the WordPress Settings. How do I override it in the code below?

        <?php query_posts( array( 'country' => 'event-england') ); ?>
        <?php if( is_tax() ) {
            global $wp_query;
            $term = $wp_query->get_queried_object();
            $title = $term->name;
        }  ?>

        <ul>
            <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>

            <li><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></li>

            <?php endwhile; else: ?>
            <?php endif; ?>
        </ul>       

Related posts

Leave a Reply

1 comment

  1. Something like this is what you need. The Codex page for WP_Query is very helpful

    $args = array('post_type' => '<your custom post type name>',
                  'posts_per_page' => 5,
                   'tax_query' => array(
                                    array(
                                      'taxonomy' => '<your custom taxonomy name>',
                                      'field' => 'slug',
                                      'terms' => 'event-england'
                                     )
                               )
             )
    
    $query = new WP_Query($args)