I am trying to set up a category archive (editing category.php) that displays a list of posts from one single category. If I left the twentyten default code

(get_template_part( 'loop', 'category' );)

and i go to www.mysite.com/categoryname it correctly filters the posts only for the categoryname.

If I try to use my custom query code, going to www.mysite.com/categoryname every post is displayed, despite of category. This is the loop code:

    <?php if (have_posts()) : ?>
    <?php
               $args = array(
                   'post_type' => 'post',
                   'posts_per_page' => 5,
                   'orderby' => comment_count,
                   );
        query_posts($args);
        while (have_posts()) : the_post();?>



    MY CUSTOM CONTENT

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

thanks

1 Answer
1

That happens because you are overwriting the query with you $args, If you want to modify it and not overwrite it then use this format:

//get the $query_string in to your $args array
global $query_string;
parse_str( $query_string, $args );
//modify whatever you want
$args['post_type'] = 'post';
$args['posts_per_page'] = 5;
$args['orderby'] = 'comment_count';
query_posts($args);

Leave a Reply

Your email address will not be published. Required fields are marked *