Include/Exclude Category from WordPress wp_get_archives()

For some reason, WordPress’ “wp_get_archives()” function does not allow us to include or exclude categories by default.  This is weird, because many other WordPress hooks include this basic functionality.

Thankfully, after struggling for a bit today, I discovered this plugin that solves the issue.  It hooks directly into the WordPress core, so customizing is a breeze!  Simply add “cat=5” (with the number “5” being the id of the category you want to include) to the “get_archives” parameters in your template file!  It’ll look like this: <?php wp_get_archives(‘cat=5’); ?>

Pretty cool, eh?

16 Comments

  1. Danilo on September 17, 2009 at 3:31 am

    thanks a lot!!!!!



    • Toby on September 18, 2009 at 12:44 pm

      No problemo, Danilo! 🙂



  2. Courtney on September 21, 2009 at 6:48 pm

    This is definitely what I was looking for — but it doesn’t seem to work with permalinks.



  3. Toby on September 21, 2009 at 8:59 pm

    @Courtney – What do you mean? Permalinks to blog posts?



  4. Courtney on September 21, 2009 at 10:38 pm

    Hmm, maybe I described that wrong.

    But the real issue is that, while it does filter down the archives list correctly it doesn’t display the contents for a particular month in that list.

    The plugin creates this link for September 08 — http://myurl.com/2009/09/?cat=4 — but if I click on it it displays as http://myurl.com/category/cats/ (“cats” being category with ID of 4). And it displays all entries for that category, not just September 2008.

    I guess what I’d really like is if it did something like:

    http://myurl.com/2009/09/category/cats/.



  5. Courtney on September 21, 2009 at 10:40 pm

    P.S. Shoot, I shouldn’t have used “cats” as my arbitrary category name (“cats” and “category” might be confusing)… Insert “dogs” or whatever category name makes the most sense to understand the scenario.



  6. Phil on January 8, 2010 at 3:56 pm

    Hi Courtney, wondering if you figured out the permalinks issue with this plugin. I’ve been having the same problem I think.



  7. Toby on January 13, 2010 at 10:30 pm

    @Courtney – I see what you are talking about now, but unfortunately, I don’t know how to solve the problem. Perhaps you can find some help on the WordPress.org forums.



  8. Alex on April 20, 2010 at 11:35 am

    Not too sure if there has been a recent update to the plugin, but to make it work with permalinks, just go to the plugin settings page (Settings > Kwebble) and click on “Disable canonical URLs.” Then update. Works fine now for me with neat url permalinks.

    You might already know about this, but thought I’d comment about it just in case.



  9. Tim on April 26, 2010 at 5:16 am

    It doesn’t work.
    If I click on the month, the actual page reloads and it doesn’t goes to the archive.php to list the posts.



  10. Balu on August 16, 2010 at 12:14 am

    Thanks a lot …………………………….



  11. Mind on August 30, 2010 at 2:59 pm

    Great. Thanks



  12. Yub on March 5, 2011 at 12:43 pm

    Does this plug-in work with thesis theme? I tried but not working.

    Here is my code:

    function posts_nav() {
    echo ‘Blog‘;
    wp_get_archives(‘cat=5’);
    echo ”;
    }
    add_action(‘thesis_hook_last_nav_item’,’posts_nav’);

    ?>



  13. toby on March 17, 2011 at 2:05 pm

    @Yub – I have not tried this in the Thesis theme.



  14. Grant on May 15, 2011 at 9:28 pm

    Could this also work if you passed an author ID through the wp_get_archives?

    Thanks



  15. toby on May 17, 2011 at 12:05 am

    @Grant – I don’t know. Please give it a try and let me know!



RSS From Toby’s Blog

  • The Horrors of Covering Your Own Ass
    Today I emailed a very simple question to support@[companyname].com (2 sentences total). The automated response I got back was this: Keep in mind that the above was an auto-response and: It’s hard to read. Everything has the same import (e.g. none of it is important enough to call out separately). It’s long. It added absolutely-zero…
  • If something stupid makes money, then it’s not stupid.
    I’ve seen some stupid things in my life…And some of them were really really smart. I remember a story from decades ago where the U.S. military was looking to equip the Stealth Bomber with a fancy computer-driven video system so the pilots could see behind them. Well, the computers failed to get the job done,…
  • There is no destination.
    Coding is a process of failure followed by a moment of great joy. You've gotta ride through the failures to experience the joy...

More posts from themightymo.com

How to deactivate all WordPress plugins via the database

By The Mighty Mo! Design Co. | January 20, 2022

Go to phpMyAdmin. Go to the “wp_options” table. Search for the field named, “active_plugins”. Edit the “active_plugins” field. Delete the value/contents of the “active_plugins” row. Save. That’s it! All your plugins are now deactivated!

Website DNS, Domain Registration, & Hosting Basics

By Toby Cryns | November 30, 2021

Websites have multiple layers: Domain Registration When you register a domain, you pay someone ~$20/year for a .com domain. Registration means you are leasing the domain for a year or more. A domain is the “yoursite.com” or “yoururl.net” or “yourorganization.org” that people type into their browser. We use services like Namecheap, Dreamhost, and GoDaddy for…

Avada ThemeFusion loads 80+ javascript files on every page! DON’T RECOMMEND!

By The Mighty Mo! Design Co. | November 18, 2021

I inherited a WordPress site using Avada ThemeFusion, and it is experiencing really bad performance issues. After doing lots of my standard bag-of-tricks optimizations to little effect, I decided to simply count the javascript files. To my surprise horror, I found it was loading over 80 javascript files on every single page! (For comparison: themightymo.com…

RSS From Toby’s Blog

  • The Horrors of Covering Your Own Ass
    Today I emailed a very simple question to support@[companyname].com (2 sentences total). The automated response I got back was this: Keep in mind that the above was an auto-response and: It’s hard to read. Everything has the same import (e.g. none of it is important enough to call out separately). It’s long. It added absolutely-zero…
  • If something stupid makes money, then it’s not stupid.
    I’ve seen some stupid things in my life…And some of them were really really smart. I remember a story from decades ago where the U.S. military was looking to equip the Stealth Bomber with a fancy computer-driven video system so the pilots could see behind them. Well, the computers failed to get the job done,…
  • There is no destination.
    Coding is a process of failure followed by a moment of great joy. You've gotta ride through the failures to experience the joy...