Clean Archives Reloaded

What Exactly Does This Plugin Do?

It creates a pretty list of all of the posts that you’ve made to your blog. To see an example, check out my archives page. Note that the image located there that shows the post times of recent posts is generated by a seperate plugin.

Download:

Support / Feature Request Forum:

http://wordpress.org/tags/clean-archives-reloaded

Credits / History:

This plugin is based on a concept (it no longer shares any common code) by Sebastian Schmieg for the archive page of his “Blix” theme. His code was later converted to a plugin by Shawn Grimes.

The drawback of both of those versions though was the sheer number of queries required (around 1 per month + 2 per post — it added up quick). So, I decided to make my own version which cached the output so that it was only regenerated when needed and otherwise just pulled with 1 query from the database. I was also given the idea by Chris O’Rourke to use Javascript to make the months collapsible as many people’s archives pages were getting rather long.

All of that was then replaced by the current version which uses WordPress functions and internal WordPress caching techniques to make only one query per page period.

780 thoughts on “Clean Archives Reloaded

  1. Pingback: ????WordPress?? | ?????

  2. I’m getting the same issue as Roni.

    I added it to my sidebar as:

    <?php cleanarchivesreloaded() ?>

    TIA,
    Mick

  3. Pingback: Behind The Scenes of the NLCast.com Website | My Blog

  4. Pingback: ??????Twitter Theme

  5. This is a great plugin but would love to be able to make separate pages for each month of each year. Only because we write about 200 articles per month, so after a year the page would have 2400 article links on one page.

    I know people have asked this already, but I figure I’d add my two cents that I think it would be great if there was a shortcode to call specific months of certain years for individual pages.

    Thanks for the hard work!

  6. Pingback: YESURE???? » 10?WordPress????,??????????

  7. Pingback: New Changes « Outspoken Truth

  8. I tried this plugin but seems like I am doing something wrong. The archives page shows a list of pages, categories, months, authors, and posts. It doesnt look like the one in your demo.

    Please help!

  9. Pingback: Clean Archives Reloaded « Webasistani bili?im Teknoloji

  10. Viper, I’ve been using this plugin for some time now but I’ve recently re-installed it on a client site and it isn’t working. All I’m getting is a blank page. I know I’ve inserted the code correctly on the page. Not sure what the problem might be. It looks like others have had this problem too. Could it be an incompatibility issue with certain themes?

    • It could be running out of memory. I would suggest checking the server’s error_log or turning on display_errors.

      My plugin tries to use as few database queries as possible, but it does so at the cost of using more memory. On my (long) todo list is making this an option — few queries, high memory usage vs. lots of queries, low memory usage.

  11. OMG. Help. I love what your plugin does and it worked on WP 3.0 Multisite just fine – but for one hitch. While it displayed perfect archives on a page I named Archives, it ALSO turned the Home page, which used to display my posts, into an archive page as well.

    I’ve deleted the archives page, uninstalled and then deleted plugin and now, when I enter http://thisonewildlife.com in any browser, it adds “/archives” to it. Of course, since deleting the archive page, http://thisonewildlife.com/archives gives a 404 error.

    Why does my domain name add “/archives” to it now? More importantly, how do I make display my posts again? Right now it’s just a shell with sidebars.

  12. PS: In Settings>Reading, I tried to reset the front page to display posts but with no change. I then tried to set the front page to a specific page. It won’t do that either.

  13. Thanks for the response – and thanks again for the terrific plugin. Turns out the Redirection plugin is automatically overwriting my home page with the archive page – but only after adding the CAR code. I guess these plugins like each other enough to sneak out and play together. After confiscating their incriminating notes, I’ve grounded them both and all is right with the world once more.

    • Did you ever figure out what happened and how to correct it? I have the same issue right now, but I want to keep using Redirection (not CAR though unfortunately).

  14. This is a great plugin. Thanks much 🙂

    Some queries though –
    How do I change the default CSS used in the plugin to suit my theme?
    Is there a way to show up archives by category along with archives by month?

    Appreciate your inputs.

    • My plugin doesn’t provide any CSS of it’s own really other than modifying the cursor when hovering over a month. It’s just a standard nested unordered list. You can use the classes that the plugin applies to it’s output though to style it. Just add the rules to your theme’s style.css file.

      And no, my plugin does not support category archives.

  15. Check the accordion menu at the sidebar of my blog, find the “Table Of Content” menu. That is the work of Clean Archives Reloaded plugin. Many thanks, Viper!

    Unfortunately, when I installed it in my other blog, it doesn’t works. It shows a blank page… What is wrong with it?

  16. Pingback: WordPress Plugins to Enhance the Archives Page of Your Blog | riyaz.net

  17. Pingback: Wordpress için ayl?k baz?da ar?iv eklentisi | Netcambazi.Com

  18. Pingback: SanalAlemci » Blog Archive » Wordpress Ar?iv Eklentisi-”Clean Archives Reloaded”

  19. Trying to show content instead of the title.
    get_the_title( $post->ID ) is showing up the title.

    I tried few tweaks but could not work out. Any suggestion.

  20. Pingback: WordPress Ar?iv Sayfas? Olu?turmak » Kuzublog

  21. Great plugin – exactly what I was looking for! I’ve tidied up the jQuery a wee bit. Doesn’t really make much of a difference, just ditched a few lines!

    If you’re interested:

    		jQuery(function($) {
    		
    			/* Fancy archive stuff */
    				$('.car-monthlisting').hide().filter(':first').fadeIn();
    				$('.car-yearmonth').click(function() {
    					$(this).next().slideToggle('fast');
    				});
    				$('.car-toggler').click(function() {
    					if ( '<?php echo js_escape( __('Expand All', 'clean-archives-reloaded') ); ?>' == jQuery(this).text() ) {
    						$(this).parent('.car-container').find('.car-monthlisting').fadeIn();
    						$(this).text('<?php echo js_escape( __('Collapse All', 'clean-archives-reloaded') ); ?>');
    					}
    					else {
    						$(this).parent('.car-container').find('.car-monthlisting').fadeOut();
    						$(this).text('<?php echo js_escape( __('Expand All', 'clean-archives-reloaded') ); ?>');
    					}
    					return false;
    				});
    			
    		});
    
    • Thanks. It’s been a while since I wrote that old crappy jQuery. My skills have improved a fair amount since then. Infact I should make that into a stand-alone file and use variables for the strings.

  22. Pingback: Clean Archives Reloaded | Blogdaslar.Com Blog Birli?i

  23. Pingback: ???????WordPress?? | ????

  24. Nice plugin! But in WordPress 3.0.1 I got a error “Headers already sent by” clean-archives-reloaded.php in wp-include/pluggable.php on line 890
    After deactivation everything gone ok.
    Please help!

  25. I’ve just released a new version of this plugin that should greatly reduce the memory requirements of this plugin. I have no idea why I didn’t think of the solution I used earlier. Here I was this whole time thinking it was going to be a lot more complicated.

    Let me know if you run into any issues everyone.

  26. Want to update:
    but….

    Incompatibel archief PCLZIP_ERR_BAD_FORMAT (-10) : Unable to find End of Central Dir Record signature

  27. Pingback: 9 Plugins Utiles para Wordpress

  28. Hi, Alex, your archive plugin is awesome. Thanks a lot!
    I have a question, can I set “expand all” as default instead of must clicking it every time? Thx!

  29. Pingback: My WordPress Plugins (November 2010) · Lirae.co.uk

  30. Pingback: How to Add an Archives page to Your Wordpress Blog

  31. Pingback: ??WordPress?????? | Never Slow Down

  32. Pingback: ????? ???? A~Z | Gini Kim Photography | Gini Kim Photography

  33. Is there any way I can exclude certain categories from showing up in the archives? In the previous versions I could do it using the get_post query, but I see that you’ve removed it in the latest version. Thanks!

  34. Pingback: ?????????? | ????

  35. Pingback: Wordpress plugin |

  36. Would love it if the plugin collapsed to years as well as months! In any case, this is the only archive collapsing plugin that actually shows up after I’ve activated it.

    Thanks.

    pvener

  37. Pingback: 10 WordPress Plugins That Power QOT

  38. Hi, I’m checking out different archive plugin to find one that run efficiently on sites with thousands of posts. But I’m not having much luck.

    You claim that your plugin is “highly efficient”, yet it does at least one SQL query per post (I’m assuming it does that in the get_permalink() line), and this is similar to lots of other archive plugins out there.

    This isn’t ideal for me because my site has 10,000+ posts, and I don’t want to kill my database.

    Can you comment on your reasons for writing your plugin this way or if you have any plans to change this in a future release?

    • How else am I going to link to the post? get_permalink() is required.

      If you’re that concerned about database queries, then install a persistent object cache plugin. W3 Total Cache for example will do it.

      • I agree that

        get_permalink()

        should be used (as opposed to rewriting core WordPress functionality). My point, however, is that your plugin advertises that it only makes one database query when in fact it makes 1 + however many posts your site has.

        I’m not trying to just be like, “I told you so … “, I’m actually just trying to find a good solution to this issue. Until I find a better option, this is what I do:

        $query = array(
          'numberposts' => -1,
          'exclude_fields' => 'post_content'
        );
        $all_posts = get_posts($query);
        

        Then I can pass a post object to

        get_permalink()

        , so another query isn’t required. But that seems like overkill as well.

        I’ve posted this topic on stackoverflow:
        http://stackoverflow.com/questions/4778421/is-it-possible-to-have-get-posts-or-wp-query-not-return-the-post-content

Comments are closed.