Remove Paging From WordPress Archives [en]

[fr] Pour supprimer les "pages" de vos archives WordPress, utilisez le code ci-dessous dans le fichier functions.php du thème que vous utilisez.

Thanks a lot to Matt for giving me the code which allows me to remove paging from the archives on this blog. I’ve been wanting to do that for a long time, but didn’t know where to start.

Just add the following code to the functions.php file of your theme.

function yay_nopaging($query) {
if ( !is_home() && !is_feed() && '' === $query->get('nopaging') )
    $query->set('nopaging', 1);

add_action('parse_query', 'yay_nopaging');

Unfortunately, this breaks the Recent Posts widget, which starts displaying… all the posts (that’s a lot of them, here). I removed the widget, but if you have a solution, I’d be happy to hear it.

10 thoughts on “Remove Paging From WordPress Archives [en]

  1. Hi Stephanie! You didn’t say much about your reasons for wanting to remove paging, which I’d be interested to hear. My initial reaction would be that this might end up orphaning a lot of your old posts and having them excluded from indexing.

  2. Gerard: I like having all the posts for one month on one page. I wasn’t really concerned about indexing. It’s also because sometimes, I’m looking for a post which I know is during a certain month, and having that month split on many pages means I can’t do a simple text search on the page to find the post.

  3. I have always done it by inserting

    $posts_per_archive_page = -1;

    in index.php just before


  4. I use the Smart Archive plugin which shows you the titles of all your posts. I have a lot, so it takes a couple of seconds, but it’s not unbearable. Very handy. I like it a lot.

    You can see what it looks like at my site here (though for other, non-technical reasons, I have the link temporarily disabled from my site).

Leave a Reply

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