Multiple WordPress Sidebars

  • Digg
  • Technorati
  • del.icio.us
  • Propeller
  • StumbleUpon
  • Reddit
  • Mixx
  • Fark
  • Slashdot
  • Sphinn
  • Design Float
  • DZone
  • BlinkList
  • email

On this site that I have a slightly different sidebar for some of the main pages of the site as compared to the post pages. Using multiple sidebars in WordPress can be a great way to change the flow and design of your WordPress based website.

Some people use a hierarchy method in the naming of the template files to achieve this effect, but in my opinion it is too cumbersome for most user’s needs to do in that manor.

The method of multiple sidebars for WordPress that I am using on this site is a very simple PHP snippet added to the template to call the desired sidebar.php file depending on the area of the site that you are in.

I have created two sidebar files for the template and named them differently (for my example we will call the two files “sidebar_a.php” and “sidebar_b.php” to keep them separate (you may name these files anything you like).

In the standard template files, there is a small line of code that calls the sidebar content to the page. This line is typically found on the page.php file near the top; however, this may be in a different place depending on the template that you are using.

The line you are looking for looks like this:

<?php get_sidebar(); ?>

To call multiple WordPress sidebars and use a different sidebar on specific pages, you would need to change this line to the following:

<?php if (is_page(XX)) {include (’sidebar_b.php’); }
else if (is_page(XX)) {include (’sidebar_b.php’); }
else {include (’sidebar_a.php’); }
?>

* You must replace the “XX” above with the ID number of the page you want the sidebar to appear on.

Using this method will call the standard sidebar_a.php file to all pages, except for the pages that are specifically instructed to call the sidebar_b.php file.

Enjoy This Article?

Now is your chance to join our growing community! Be the first to know about great new articles like this one. Register for my Email Updates or RSS Feed today!

About the Author

Zach is a marketing consultant and owner of a FL web design and marketing group. He offers graphic design and marketing services, speaks on Internet marketing, and blogs about it all in his free time. (»)

Contact Zach: Company Website | Email

Related Posts


WordPress 2.7 Page Templates Not Working

Allow HTML in WordPress Author Bios

Optimizing Movable Type Title Tags

Generate Traffic from Wikipedia

Optimizing Blogware Title Tags


13 Comments

  1. Anfisa

    November 5, 2008 @ 8:26 pm

    Thanks for the info!

    Reply

  2. web design seo

    April 13, 2009 @ 9:09 am

    Thank you so much this made my life easier. If i was using wordpress MU will i still have to do that ?

    web design seo’s last blog post… Pay Per Click Is it Worth It ?

    Reply

  3. J.Riley

    April 20, 2009 @ 12:25 pm

    did’nt work for me.

    Warning: include(�sidebar2php�) [function.include]: failed to open stream: No such file or directory in C:\xampp\htdocs\wordpress\wp-content\themes\blue-skies\page.php on line 72

    Warning: include() [function.include]: Failed opening ‘�sidebar2php�’ for inclusion (include_path=’.;C:\xampp\php\pear\’) in C:\xampp\htdocs\wordpress\wp-content\themes\blue-skies\page.php on line 72

    I put the codes exactly alike just changing sidebar_a for sidebar1 and so..

    Reply

  4. Tony Boyce

    May 25, 2009 @ 2:42 pm

    I had the same problem as J. Riley.
    First I realised that if you cut and paste (which I did) the single commas around the ’sidebar_b.php’ have to be corrected.
    Problem still persisted but after studying the Wordpress codex on “is_page” that the ID also has to have single commas.

    Works fine now

    Reply

  5. Travis Lusk

    May 28, 2009 @ 9:30 pm

    You might find this useful too:
    http://blogcraving.com/sidebars-pages-wordpress-blog/

    And there’s also a fully illustrated instruction set you can get by email. Provides a little more detail if the plain text version is hard to follow.

    Travis Lusk’s last blog post… How To: Different Homepage and Single Post Sidebars

    Reply

  6. romonoeroetoko

    July 15, 2009 @ 10:47 am

    Your news is a cool stuff man, keep it going.

    Reply

  7. Carlos

    July 24, 2009 @ 6:03 am

    Hey man great post, I just CANNOT get the posts inside my category to also have the secondary sidebar that Im working on! any help please

    Reply

  8. Carlos

    July 24, 2009 @ 6:04 am

  9. Carlos

    July 24, 2009 @ 1:55 pm

    I got it: All I had to do was go to single.php and place the code:

    That way I got the same sidebar on the category main page and all the specific posts inside that category, thankx for the tutorial man!

    Reply

  10. michael

    July 30, 2009 @ 11:39 pm

    great post very informative

    Reply

  11. amenodimeno

    July 31, 2009 @ 10:52 am

    That’s good man, keep it going.

    Reply

  12. adamoerikom

    September 19, 2009 @ 2:25 pm

    Stunning blog and good article. High 5 for u man !

    Reply

  13. adamusxyz

    January 6, 2010 @ 12:33 pm

    This is a very good stuff man. But you can be more specific next time. See ya !

    Reply

RSS feed Comments | TrackBack URI

Write Comment