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.


Where to now?

Work with Me

Think you'd need help getting somethink like this setup on your own? Or maybe you've got an idea for a product but don't know how to turn it into 'something'. I can help on both fronts! Just get in touch and we can chat about your needs.

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 almost always reply to every comment.

Enter your email address to subscribe and receive notifications of new posts by email.

  • 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.

    • Tyler

      Hi Carina,

      Please give it a try again:

      I’ve changed some things so it may be working now. I’ve never come into problems downloading, so I can’t really test.

      Can you let me know?

  • Dino

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

  • Dino

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

  • Dino

    Hi Tyler,

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

    • Tyler

      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.

    • Tyler

      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.

    • Tyler

      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.