Posted In Internet

How To: WordPress 3.0 Multi-site Blog Directory

I’ve been using this WordPress page template lately for creating a directory page. The directory page lists every blog on a WordPress 3.0 multi-site setup and includes the author name, author bio, number of posts, last updated time, and gravatar. One thing it DOES NOT include is recent posts. I will get around to adding that in a few weeks. It also lists the 5 most recent posts for each blog.

I like using the 1kb css grid system for laying pages out, so you can see what I use for css in the zip file. If you want to roll with that setup, you can just copy and paste the contents of css.css into the style.css file for your theme. And move sign.png into the images/ folder for your theme. You’ll also want to do something with the blog-directory.php file.

blog-directory.php is a custom page template for Twenty Ten. If you’re using the Twenty Ten theme, you can just drop blog-directory.php into the “twentyten” theme folder and be done. If you’re using another theme you’ll need to open blog-directory.php and copy everything between <!– start blog directory –> and <!– end blog directory –> and paste it into a custom template for your theme.

If you’re not familiar with custom page templates in WordPress, you can read about them here.


Well, now what?

Work with Me

I'm available for hire and always taking new clients, big and small. Got a project or an idea you'd like to discuss? Startup plan but no developer to make it happen? Just get in touch, I'd love to see if I can help you out!

Leave some Feedback

Got a question or some updated information releavant to this post? Please, leave a comment! The comments are a great way to get help, I read them all and reply to nearly every comment. Let's talk. :) is proudly hosted by DigitalOcean

About these ads
  • Carina

    Hi. I was wanting to try this as I need a blog directory but there seems something wrong with the zipfile.

    I would really like to try it out whenever you have the time to fix the zipfile for downloading.

  • file cannot be downloaded as the download page is not working.

  • hi, I have managed to download the file now.. thnx.

  • Hi Tyler,

    I cannot download the file using firefox in mac so I used safari browser to download. Hope this helps. cheers!

    • Hi Dino,

      Weird, I can download in Firefox no problem.

      Could I get you to install the Firebug extension in Firefox and send me the headers that get sent when you click to download the file?


  • AJ

    This plugin has a great look and does what I want except for the random listing. Would it be possible to get the blog directory in alphabetical order instead? I see where the random call is made but I don’t know the code to make it order in that way.

    • Hi AJ,

      In blog-directory.php, look at line 33.

      You’ll want to change the part that says “ORDER BY RAND()” to “ORDER BY display_name”.

      That should take care of it. Let me know how that works for you!

      • AJ

        Thanks so much Tyler for the reply. That change did what I needed it to do.

  • Laran


    Thank you very much for your blog directory.

    It’s possible to place it in the default page (home) of the main site instead to place it in a new and different page?

    Kind regards.

  • Laran

    Hi again!

    I’m sorry. I have found how to do it..

    Settings -> Read

    Default’s page shows: a static page (the one that has the blog-directory template) 🙂

    Thanks again for share your job.

    Kind regards.

    • Hi Laran,

      Go ahead and setup your page with the blog directory template. Then, in your WordPress dashboard, go to Settings->Reading and check Static for “Front Page Displays”. Then, choose the blog directory page as your front page.

      That should do it for you. Let me know if that doesn’t work.

  • web

    I was suggested this web site by means of my cousin. I am not sure
    whether this publish is written by him as nobody else recognize such precise approximately
    my problem. You’re incredible! Thank you!